
/* Elevix cinematic motion */
.home-hero{--mx:0px;--my:0px;isolation:isolate}.home-hero:after{content:'';position:absolute;z-index:1;inset:-12%;pointer-events:none;background:radial-gradient(circle at calc(72% + var(--mx)) calc(46% + var(--my)),rgba(233,30,99,.20),transparent 24%),radial-gradient(circle at calc(58% + var(--mx)) calc(55% + var(--my)),rgba(106,5,114,.22),transparent 31%);mix-blend-mode:screen;animation:aurora 9s ease-in-out infinite alternate}.cinematic-hero{transform:translate3d(var(--mx),var(--my),0) scale(1.045);transition:transform .5s cubic-bezier(.2,.7,.2,1);animation:cinemaBreath 12s ease-in-out infinite alternate}.home-hero:before{background:linear-gradient(180deg,rgba(5,4,7,.02) 52%,rgba(5,4,7,.82) 100%),linear-gradient(90deg,rgba(5,4,7,.18),transparent 35%)}.hero-caption{animation:captionRise .9s .25s both}.topbar{box-shadow:0 10px 40px rgba(7,2,13,.18)}
.services,.method,.about{position:relative;isolation:isolate;overflow:hidden}.services:after,.method:after,.about:after{content:'';position:absolute;z-index:-1;width:560px;height:560px;border-radius:50%;filter:blur(65px);opacity:.23;pointer-events:none}.services:after{right:-250px;top:8%;background:var(--magenta);animation:floatGlow 12s ease-in-out infinite alternate}.method:after{left:-280px;bottom:5%;background:var(--violet);animation:floatGlow 15s ease-in-out infinite alternate-reverse}.about:after{right:-300px;top:-90px;background:var(--magenta);animation:floatGlow 13s ease-in-out infinite alternate}.service-card:after{content:'';position:absolute;inset:0;background:radial-gradient(circle 260px at var(--px,50%) var(--py,50%),rgba(233,30,99,.22),transparent 70%);opacity:0;transition:opacity .25s;pointer-events:none}.service-card:hover:after{opacity:1}.service-call{position:relative;overflow:hidden}.service-call:before{content:'';position:absolute;width:300px;height:300px;border:1px solid rgba(255,255,255,.26);border-radius:50%;right:-80px;top:-130px;animation:ringDrift 10s ease-in-out infinite alternate}.service-call>*{position:relative;z-index:1}.marquee span{animation-duration:12s}.project-art strong{transition:transform .6s cubic-bezier(.2,.7,.2,1)}.project-art:before{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.project:hover .project-art strong{transform:scale(1.06) translateY(-5px)}.project:hover .project-art:before{transform:rotate(22deg) scale(1.13)}.project{position:relative}.project:after,.posts a:after{content:'';position:absolute;inset:0;background:radial-gradient(circle 240px at var(--px,50%) var(--py,50%),rgba(233,30,99,.09),transparent 72%);opacity:0;transition:opacity .25s;pointer-events:none}.project:hover:after,.posts a:hover:after{opacity:1}.posts a{position:relative;overflow:hidden}.posts a>*{position:relative;z-index:1}.quote{background:linear-gradient(120deg,#2b0a4d,#7a0a70,#e91e63,#6a0572);background-size:300% 300%;color:#fff;animation:colorFlow 10s ease infinite}.quote>span,.quote em{color:#ffb0ca}.section,.quote,.marquee{opacity:.35;transform:translateY(42px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.section.in-view,.quote.in-view,.marquee.in-view{opacity:1;transform:none}.service-card{transition:color .25s,transform .35s,border-color .25s}.service-card:hover{transform:translateX(9px)}.whatsapp{animation:whatsappPulse 2.7s ease-in-out infinite}
@keyframes cinemaBreath{0%{scale:1}100%{scale:1.025}}@keyframes aurora{0%{opacity:.55;transform:translate3d(-1%,1%,0) scale(.98)}100%{opacity:1;transform:translate3d(2%,-2%,0) scale(1.05)}}@keyframes captionRise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes floatGlow{from{transform:translate3d(0,-30px,0) scale(.92)}to{transform:translate3d(45px,45px,0) scale(1.12)}}@keyframes ringDrift{to{transform:translate(-60px,70px) rotate(28deg) scale(1.15)}}@keyframes colorFlow{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes whatsappPulse{0%,100%{box-shadow:0 12px 32px rgba(0,0,0,.3),0 0 0 0 rgba(46,204,113,.35)}50%{box-shadow:0 12px 32px rgba(0,0,0,.3),0 0 0 12px rgba(46,204,113,0)}}
@media(max-width:900px){.cinematic-hero{transform:scale(1.05)}.service-card:hover{transform:none}}@media(prefers-reduced-motion:reduce){.section,.quote,.marquee{opacity:1;transform:none}.cinematic-hero{transform:none}}

.topbar .logo img,footer .logo img{content:url('/elevix-logo.png')}.service-page .hero-art img{content:url('/elevix-hero-3d-v2.webp')}

.layered-hero{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;min-height:100svh;padding:104px 4.5vw 72px;background:radial-gradient(circle at 76% 48%,rgba(233,30,99,.19),transparent 25%),radial-gradient(circle at 68% 45%,rgba(106,5,114,.28),transparent 38%),#07050a}.layered-hero:before{z-index:0;background-image:linear-gradient(rgba(255,255,255,.042) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.042) 1px,transparent 1px);background-size:82px 82px;mask-image:linear-gradient(#000,transparent 94%)}.hero-brand{position:relative;z-index:3;align-self:center}.hero-logo{display:block;width:min(53vw,660px);height:auto;margin:-128px 0 -135px -52px;filter:drop-shadow(0 12px 35px rgba(0,0,0,.28))}.hero-brand>p{max-width:520px;margin:0;color:#c8bdcf;font-size:17px;line-height:1.7}.hero-brand .actions{margin-top:30px}.sphere-scene{position:relative;z-index:2;min-height:680px;display:grid;place-items:center;transform:translate3d(var(--mx),var(--my),0);transition:transform .55s cubic-bezier(.2,.7,.2,1);perspective:1100px}.sphere-float{width:min(48vw,720px);aspect-ratio:1;display:grid;place-items:center;animation:sphereFloat 5.8s ease-in-out infinite}.moving-sphere{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 35px 42px rgba(233,30,99,.22)) drop-shadow(0 0 50px rgba(106,5,114,.22));animation:spherePose 7s ease-in-out infinite alternate;will-change:transform}.sphere-ring{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.16);pointer-events:none}.ring-one{width:82%;aspect-ratio:1;animation:ringSpin 20s linear infinite}.ring-two{width:63%;aspect-ratio:1;border-color:rgba(233,30,99,.32);animation:ringSpin 14s linear infinite reverse}.ring-one:before,.ring-two:before{content:'';position:absolute;width:6px;height:6px;border-radius:50%;background:#ff4b88;top:11%;left:18%;box-shadow:0 0 18px #e91e63}.hero-caption small{font-size:11px;letter-spacing:.18em;color:#94869e}@keyframes sphereFloat{0%,100%{transform:translate3d(0,-10px,0) scale(1)}50%{transform:translate3d(0,18px,35px) scale(1.025)}}@keyframes spherePose{0%{transform:rotateZ(-22deg) rotateY(-7deg) rotateX(2deg)}100%{transform:rotateZ(-10deg) rotateY(8deg) rotateX(-3deg)}}@keyframes ringSpin{to{transform:rotate(360deg)}}@media(max-width:900px){.layered-hero{grid-template-columns:1fr;padding-top:95px;min-height:auto}.hero-brand{padding-top:20px}.hero-logo{width:min(90vw,620px);margin:-110px 0 -125px -45px}.sphere-scene{min-height:540px;margin-top:-40px}.sphere-float{width:min(84vw,610px)}.hero-caption{position:relative;left:auto;right:auto;bottom:auto;grid-column:1;margin-top:15px}}@media(max-width:560px){.layered-hero{padding:86px 6vw 35px}.hero-logo{width:108vw;margin:-95px 0 -110px -19vw}.hero-brand>p{font-size:14px}.sphere-scene{min-height:390px;margin-top:-25px}.sphere-float{width:96vw}.hero-caption{display:flex}.hero-caption>p{display:block;font-size:11px}.hero-caption>div{display:none}}@media(prefers-reduced-motion:reduce){.sphere-float,.moving-sphere,.sphere-ring{animation:none}.sphere-scene{transform:none}.moving-sphere{transform:rotateZ(-18deg)}}
.hero-brand>p strong{display:inline-block;margin-bottom:8px;color:#fff;font:700 clamp(24px,2.2vw,36px)/1.15 'Manrope';letter-spacing:-.04em}

/* Composição larga: texto à esquerda, esfera e ecossistema à direita. */
.topbar nav {
  margin-left: 0 !important;
  gap: clamp(16px, 1.7vw, 30px) !important;
}

/* O recorte do logo é apenas visual: nunca deve criar uma barra de rolagem. */
.home-hero .hero-logo-lockup{
  overflow:hidden!important;
  overflow-x:hidden!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.home-hero .hero-logo-lockup::-webkit-scrollbar{
  display:none!important;
  width:0!important;
  height:0!important;
}

.topbar { padding-left: 5vw !important; padding-right: 5vw !important; }
.topbar nav a {
  white-space: nowrap;
  font-size: 12px !important;
  font-weight: 650 !important;
  letter-spacing: .045em !important;
}
.topbar .button.small { margin-left: auto !important; }

.posts > a > span {
  color: var(--green) !important;
  text-shadow: 0 0 30px rgba(46,204,113,.16);
}

/* Quem somos: retratos reais, composição editorial. */
.about-visual {
  position: relative;
  min-height: 660px;
  isolation: isolate;
}

.about-visual::before {
  content: '';
  position: absolute;
  inset: 5% 4% 2% 5%;
  border: 1px solid rgba(255,255,255,.13);
  background: radial-gradient(circle at 42% 28%,rgba(233,30,99,.24),transparent 42%),#100619;
  z-index: -1;
}

.founder-photo { position: absolute; margin: 0; overflow: hidden; box-shadow: 0 28px 75px rgba(0,0,0,.42); }
.founder-photo img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.82) contrast(1.04); transition: transform .8s ease; }
.founder-photo:hover img { transform: scale(1.025); }
.founder-photo-a { left: 0; top: 0; width: 58%; height: 78%; z-index: 2; }
.founder-photo-b { right: 0; bottom: 0; width: 55%; height: 75%; z-index: 3; border: 9px solid #17072b; }
.about-visual > p { position: absolute; z-index: 5; left: 26px; bottom: 24px; margin: 0; color: #fff; font-size:11px; font-weight: 750; letter-spacing: .17em; text-shadow: 0 2px 16px rgba(0,0,0,.7); }

/* Contato em cartões sobrepostos. */
.contact {
  position: relative !important;
  isolation: isolate;
  grid-template-columns: minmax(0,1.05fr) minmax(410px,.78fr) !important;
  gap: 6vw !important;
  padding-top: 135px !important;
  padding-bottom: 145px !important;
  overflow: hidden;
  background: radial-gradient(circle at 12% 20%,rgba(106,5,114,.48),transparent 34%),radial-gradient(circle at 78% 78%,rgba(233,30,99,.18),transparent 30%),#11051f !important;
  color: #fff !important;
}

.contact::before { content:''; position:absolute; z-index:-1; width:440px; height:440px; border:1px solid rgba(255,255,255,.08); transform:rotate(18deg); left:-230px; bottom:-250px; }
.contact-intro { align-self: center; }
.contact .tag { color: var(--green) !important; }
.contact h2 { color:#fff !important; font-size:clamp(54px,5.6vw,88px) !important; line-height:.94 !important; }
.contact-intro > p:not(.tag) { max-width:570px !important; color:rgba(255,255,255,.67) !important; font-size:17px; line-height:1.7 !important; }
.contact-links { display:grid; grid-template-columns:1fr 1fr; gap:11px; margin-top:38px; }
.contact-link { position:relative; min-height:98px; padding:19px 40px 18px 19px; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.055); backdrop-filter:blur(12px); transition:.25s; }
.contact-link:first-child { grid-column:1/-1; }
.contact-link:hover { transform:translateY(-3px); border-color:var(--green); background:rgba(46,204,113,.09); }
.contact-link small { display:block; margin-bottom:10px; color:var(--green); font-size:11px; font-weight:750; text-transform:uppercase; letter-spacing:.15em; }
.contact-link strong { display:block; font:650 clamp(14px,1.3vw,19px) Manrope,sans-serif; letter-spacing:-.025em; overflow-wrap:anywhere; }
.contact-link span { position:absolute; right:17px; top:17px; color:var(--magenta); }
.contact form { position:relative; z-index:2; isolation:isolate; align-self:center; padding:52px 46px !important; background:#fff !important; box-shadow:0 35px 90px rgba(0,0,0,.38); }
.contact form::before { content:''; position:absolute; z-index:-1; inset:-22px 22px 22px -22px; background:linear-gradient(145deg,var(--magenta),#7a0a70); }
.contact label { margin-bottom:27px !important; color:#554b5b !important; font-size:11px !important; }
.contact input,.contact select,.contact textarea { padding:14px 0 !important; font-size:15px !important; }

/* Rodapé completo. */
.site-footer { padding:82px 5vw 28px !important; display:grid !important; grid-template-columns:1.3fr .62fr .8fr !important; gap:6vw !important; background:linear-gradient(140deg,#09030f,#160623 70%,#23082c) !important; border-top:1px solid rgba(255,255,255,.12) !important; }
.site-footer .footer-brand .logo { width:230px; margin:0 0 26px; }
.site-footer .footer-brand p { max-width:390px; margin:0 0 27px; color:#a99caf; font-size:16px; line-height:1.65; }
.footer-email { display:inline-block; padding-bottom:7px; border-bottom:1px solid var(--magenta); font:650 15px Manrope,sans-serif; }
.footer-nav,.footer-social { display:flex; flex-direction:column; align-items:flex-start; gap:14px; }
.footer-nav small,.footer-social small { margin-bottom:10px; color:var(--green); font-size:11px; font-weight:750; letter-spacing:.16em; text-transform:uppercase; }
.footer-nav a,.footer-social a { font:600 15px Manrope,sans-serif; transition:.2s; }
.footer-nav a:hover,.footer-social a:hover { color:#ff5b93; transform:translateX(4px); }
.footer-social a { width:100%; display:flex; justify-content:space-between; gap:24px; padding-bottom:10px; border-bottom:1px solid rgba(255,255,255,.1); }
.footer-social span { color:var(--magenta); }
.footer-bottom { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:25px; margin-top:35px; padding-top:24px; border-top:1px solid rgba(255,255,255,.1); color:#74687c; }
.footer-bottom a { color:#cfc5d5; font-size:11px; text-transform:uppercase; letter-spacing:.1em; }

@media (max-width: 900px) {
  .about-visual { min-height:610px; order:2; }
  .contact { grid-template-columns:1fr !important; gap:75px !important; }
  .contact form { width:min(100%,620px); justify-self:center; }
  .site-footer { grid-template-columns:1fr 1fr !important; }
  .footer-brand { grid-column:1/-1; }
}

@media (max-width: 560px) {
  .topbar nav a { font-size:16px !important; }
  .about-visual { min-height:500px; }
  .founder-photo-a { width:65%; height:73%; }
  .founder-photo-b { width:62%; height:71%; border-width:6px; }
  .contact { padding:90px 6vw 105px !important; }
  .contact h2 { font-size:45px !important; }
  .contact-links { grid-template-columns:1fr; }
  .contact-link:first-child { grid-column:auto; }
  .contact form { padding:38px 25px !important; }
  .contact form::before { inset:-13px 13px 13px -13px; }
  .site-footer { grid-template-columns:1fr !important; padding-top:65px !important; }
  .footer-brand,.footer-bottom { grid-column:auto; }
  .footer-bottom { align-items:flex-start; flex-direction:column; }
}

.layered-hero::before {
  content: '' !important;
  position: absolute !important;
  z-index: 0 !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 60% 70% at 82% 47%, rgba(233,30,99,.16), transparent 62%),
    radial-gradient(ellipse 55% 75% at 58% 8%, rgba(101,23,148,.18), transparent 68%),
    radial-gradient(ellipse 45% 55% at 5% 92%, rgba(40,11,76,.42), transparent 70%),
    linear-gradient(112deg, #050307 0%, #0d0615 48%, #12061d 100%) !important;
  background-size: auto !important;
  mask-image: none !important;
  pointer-events: none !important;
}

@media (min-width: 901px) {
  .layered-hero {
    display: block !important;
    position: relative !important;
    height: clamp(660px, 82svh, 800px) !important;
    min-height: 660px !important;
    max-height: 800px !important;
    padding: 74px 5vw 48px !important;
    overflow-x: hidden !important;
  }

  .hero-brand {
    position: relative !important;
    z-index: 6 !important;
    width: 44vw !important;
    max-width: 620px !important;
    height: 100% !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    padding: 0 !important;
    transform: translateY(-24px) !important;
  }

  .hero-logo-lockup {
    width: min(37vw, 520px) !important;
    aspect-ratio: 3.05 / 1 !important;
    margin: 0 0 9px -14px !important;
    overflow-x: hidden !important;
    filter: drop-shadow(0 16px 42px rgba(233,30,99,.12));
    transform: translateY(-16px) !important;
  }

  .hero-logo-lockup img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    transform: translate(-6.5%, -26.5%) !important;
  }

  .hero-slogan {
    margin: 4px 0 30px !important;
    max-width: 560px !important;
    color: #fff !important;
    font-size: clamp(27px, 2.7vw, 44px) !important;
    font-weight: 650 !important;
    line-height: 1.04 !important;
    letter-spacing: -.04em !important;
  }

  .hero-ecosystem-copy {
    max-width: 470px !important;
    margin: 0 0 26px !important;
    color: rgba(255,255,255,.68) !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
  }

  .sphere-scene {
    position: absolute !important;
    z-index: 3 !important;
    top: 70px !important;
    right: -1.5vw !important;
    bottom: -10px !important;
    left: auto !important;
    width: 50vw !important;
    min-height: 0 !important;
    margin: 0 !important;
    display: grid !important;
    place-items: center !important;
  }

  .sphere-float { width: min(35vw, 540px) !important; }
  .ring-one { width: min(42vw, 650px) !important; }
  .ring-two { width: min(37vw, 570px) !important; }
  .orbit-outer span { --radius: min(21.2vw, 326px); }
  .orbit-inner span { --radius: min(16.8vw, 258px); }

  .hero-caption {
    left: 5vw !important;
    right: 5vw !important;
    bottom: 15px !important;
    z-index: 7 !important;
  }
}

/* Regra final do ecossistema: linha e satelites usam o mesmo centro e raio. */
.home-hero .sphere-scene {
  --eco-outer-size: min(34.4vw, 524px);
  --eco-outer-radius: min(17.2vw, 262px);
  --eco-inner-size: min(30.1vw, 460px);
  --eco-inner-radius: min(15.05vw, 230px);
  transform: none !important;
  transition: none !important;
}

.home-hero .sphere-ring {
  left: 50% !important;
  top: 50% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  transform-origin: 50% 50% !important;
}

.home-hero .ring-one {
  width: var(--eco-outer-size) !important;
  height: var(--eco-outer-size) !important;
  animation: ecoRingForward 26s linear infinite !important;
}

.home-hero .ring-two {
  width: var(--eco-inner-size) !important;
  height: var(--eco-inner-size) !important;
  animation: ecoRingReverse 20s linear infinite !important;
}

.home-hero .orbit-outer span {
  --radius: var(--eco-outer-radius) !important;
}

.home-hero .orbit-inner span {
  --radius: var(--eco-inner-radius) !important;
}

.home-hero .ecosystem-nodes,
.home-hero .ecosystem-nodes span {
  pointer-events: none !important;
  touch-action: none !important;
  user-select: none !important;
}

.home-hero .ecosystem-nodes span:hover,
.home-hero .ecosystem-nodes span:active {
  scale: 1 !important;
  filter: none !important;
}

@keyframes ecoRingForward {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(360deg); }
}

@keyframes ecoRingReverse {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(-360deg); }
}

@media (max-width: 900px) {
  .home-hero .sphere-scene {
    --eco-outer-size: min(76vw, 410px);
    --eco-outer-radius: min(38vw, 205px);
    --eco-inner-size: min(62vw, 332px);
    --eco-inner-radius: min(31vw, 166px);
  }
}

@media (max-width: 560px) {
  .home-hero .sphere-scene {
    --eco-outer-size: 63vw;
    --eco-outer-radius: 31.5vw;
    --eco-inner-size: 50vw;
    --eco-inner-radius: 25vw;
  }
}

/* Ecossistema da Home: as linhas e os satelites compartilham a mesma
   geometria. Isso impede que qualquer simbolo escape da orbita durante
   o giro, no hover ou no toque. */
.home-hero .sphere-scene {
  --ecosystem-outer-radius: min(17.2vw, 262px);
  --ecosystem-inner-radius: min(15.05vw, 230px);
  transform: none !important;
  transition: none !important;
}

.home-hero .ring-one,
.home-hero .ring-two {
  left: 50% !important;
  top: 50% !important;
  margin: 0 !important;
  aspect-ratio: 1 / 1 !important;
  transform-origin: 50% 50% !important;
}

.home-hero .ring-one {
  width: calc(var(--ecosystem-outer-radius) * 2) !important;
  height: calc(var(--ecosystem-outer-radius) * 2) !important;
  animation: ecosystemRingClockwise 26s linear infinite !important;
}

.home-hero .ring-two {
  width: calc(var(--ecosystem-inner-radius) * 2) !important;
  height: calc(var(--ecosystem-inner-radius) * 2) !important;
  animation: ecosystemRingCounterClockwise 20s linear infinite !important;
}

.home-hero .orbit-outer span {
  --radius: var(--ecosystem-outer-radius) !important;
}

.home-hero .orbit-inner span {
  --radius: var(--ecosystem-inner-radius) !important;
}

.home-hero .ecosystem-nodes,
.home-hero .ecosystem-nodes span {
  pointer-events: none !important;
  user-select: none;
  touch-action: none;
}

@keyframes ecosystemRingClockwise {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(360deg); }
}

@keyframes ecosystemRingCounterClockwise {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(-360deg); }
}

@media (max-width: 900px) {
  .home-hero .sphere-scene {
    --ecosystem-outer-radius: min(38vw, 205px);
    --ecosystem-inner-radius: min(31vw, 166px);
  }
}

@media (max-width: 560px) {
  .home-hero .sphere-scene {
    --ecosystem-outer-radius: 31.5vw;
    --ecosystem-inner-radius: 25vw;
  }
}

.ecosystem-nodes {
  position: absolute;
  z-index: 7;
  inset: 0;
  pointer-events: none;
}

.ecosystem-nodes span {
  --radius: min(20.8vw, 318px);
  position: absolute;
  left: 50%;
  top: 50%;
  display: flex;
  align-items: center;
  gap: 7px;
  width: max-content;
  padding: 8px 11px;
  border: 1px solid rgba(255,255,255,.19);
  border-radius: 999px;
  background: rgba(12,6,18,.66);
  backdrop-filter: blur(10px);
  color: #eee7f2;
  font-size:11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .11em;
  box-shadow: 0 8px 28px rgba(0,0,0,.22);
}

.sphere-ring { z-index: 5 !important; }
.ring-one::before,
.ring-two::before { content: none !important; display: none !important; }
.sphere-float { position: relative; z-index: 3; }
.ring-one { animation: ringSpin 26s linear infinite !important; }
.ring-two { animation: ringSpin 20s linear infinite reverse !important; }

.orbit-outer span {
  animation: orbitClockwise 30s linear infinite;
  animation-delay: calc(var(--i) * -5s);
}

.orbit-inner span {
  --radius: min(16.8vw, 258px);
  animation: orbitCounterClockwise 24s linear infinite;
  animation-delay: calc(var(--i) * -4s);
}

.ecosystem-nodes span::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #e91e63;
  box-shadow: 0 0 11px #e91e63;
}

@keyframes orbitClockwise {
  from { transform: translate(-50%,-50%) rotate(0deg) translateX(var(--radius)) rotate(0deg); }
  to { transform: translate(-50%,-50%) rotate(360deg) translateX(var(--radius)) rotate(-360deg); }
}

@keyframes orbitCounterClockwise {
  from { transform: translate(-50%,-50%) rotate(0deg) translateX(var(--radius)) rotate(0deg); }
  to { transform: translate(-50%,-50%) rotate(-360deg) translateX(var(--radius)) rotate(360deg); }
}

@media (max-width: 900px) {
  .layered-hero { min-height: auto !important; padding-bottom: 72px !important; }
  .sphere-scene { width: 100% !important; min-height: 430px !important; margin-top: -24px !important; }
  .hero-logo-lockup { width: min(88vw, 520px); aspect-ratio: 3.05 / 1; margin: 24px 0 10px -3vw; overflow: hidden; }
  .hero-logo-lockup img { display: block; width: 100%; height: auto; transform: translateY(-26.5%); }
  .hero-slogan { margin: 18px 0 16px; color: #fff; font-size: clamp(26px, 8vw, 40px); font-weight: 650; line-height: 1.05; letter-spacing: -.04em; }
  .hero-ecosystem-copy { max-width: 560px; color: rgba(255,255,255,.68); line-height: 1.6; }
  .topbar nav { gap: 18px !important; }
  .orbit-outer span { --radius: min(38vw, 205px); }
  .orbit-inner span { --radius: min(31vw, 166px); }
}

/* Tablet nao usa gaveta: hamburguer e so para celular (<=560px).
   Aqui o menu volta a ficar normal, na horizontal, como sempre foi. */
@media (max-width: 900px) and (min-width: 561px) {
  .home-page .topbar nav {
    display: flex !important;
    position: static !important;
    flex-direction: row !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin-left: auto !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    transform: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transition: none !important;
    z-index: auto !important;
  }

  .home-page .topbar nav::before {
    display: none !important;
  }

  .home-page .topbar nav a {
    display: inline !important;
    padding: 0 !important;
    border-bottom: 0 !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    letter-spacing: .045em !important;
  }

  .home-page .menu-toggle {
    display: none !important;
  }

  .home-page .topbar .button.small {
    display: inline-flex !important;
  }

  .home-page.menu-locked::after {
    display: none !important;
  }
}

/* Respiro entre o menu e o logo no tablet: o padding-top da secao
   ja existia (95px), mas o logo tinha pouca folga visual abaixo
   do header fixo. */
@media (max-width: 900px) and (min-width: 561px) {
  .layered-hero {
    padding-top: 132px !important;
  }
  .hero-logo-lockup {
    margin-top: 8px !important;
  }

  /* Esfera menor no tablet: no tamanho original ela crescia mais
     que a secao e o topo ficava encostando na barra do menu ao
     rolar a pagina. */
  .sphere-scene {
    min-height: 520px !important;
    margin-top: 24px !important;
  }
  .sphere-float {
    width: min(58vw, 460px) !important;
  }
  .ring-one {
    width: min(70vw, 552px) !important;
  }
  .ring-two {
    width: min(60vw, 476px) !important;
  }
  .orbit-outer span {
    --radius: min(35vw, 276px) !important;
  }
  .orbit-inner span {
    --radius: min(30vw, 238px) !important;
  }
}

@media (max-width: 560px) {
  .orbit-outer span { --radius: 39vw; padding: 6px 8px; font-size: 7px; }
  .orbit-inner span { --radius: 31vw; padding: 6px 8px; font-size: 7px; }
  /* Mantém os 14 icones visiveis no mobile, igual ao desktop/tablet;
     antes metade era escondida (nth-child even) sem redistribuir o
     restante, deixando a orbita com buracos assimetricos. */
}

@media (prefers-reduced-motion: reduce) {
  .ecosystem-nodes span { animation: none; }
  .orbit-outer span:nth-child(1) { transform: translate(190px,0); }
  .orbit-outer span:nth-child(2) { transform: translate(-190px,0); }
  .ecosystem-nodes span:nth-child(n+3), .orbit-inner { display: none; }
}

/* Refinos de alinhamento, acessibilidade e continuidade visual */
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }

@media (min-width: 901px) {
  .hero-logo-lockup { margin-left:-48px; margin-top:-10px; }
}

.marquee {
  display:flex !important;
  overflow:hidden !important;
  background:linear-gradient(90deg,#ef1760 0%,#8b1bb4 52%,#2b0d4b 100%) !important;
  color:#fff !important;
  box-shadow:inset 0 1px rgba(255,255,255,.16),inset 0 -1px rgba(255,255,255,.1);
}
.marquee-track {
  display:flex;
  flex:none;
  width:max-content;
  animation:elevix-marquee-continuous 28s linear infinite;
  will-change:transform;
}
.marquee-track span {
  flex:none;
  width:auto !important;
  padding:18px 28px !important;
  animation:none !important;
  font:800 16px/1.2 'Manrope',sans-serif !important;
  letter-spacing:.025em;
}
.marquee-track span::after { content:none !important; }
@keyframes elevix-marquee-continuous { from { transform:translateX(0); } to { transform:translateX(-50%); } }

.founder-photo-a,.founder-photo-b { border:8px solid #17072b; outline:1px solid rgba(255,255,255,.14); }
.about-visual > p {
  left:auto;
  right:0;
  top:13%;
  bottom:auto;
  width:38%;
  transform:none;
  padding:0 18px 0 58px;
  border:0;
  border-bottom:0;
  border-radius:0;
  background:transparent;
  color:#fff;
  text-align:left;
  font-size:11px;
  line-height:1.4;
  letter-spacing:.13em;
  text-shadow:0 2px 14px rgba(0,0,0,.65);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  pointer-events:none;
}
.about-visual > p::before {
  content:"";
  position:absolute;
  left:18px;
  top:7px;
  width:27px;
  height:2px;
  background:var(--magenta);
}

.whatsapp { font-size:0; color:#fff; }
.whatsapp::before { content:""; width:29px; height:29px; background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='white' d='M16.04 3A12.86 12.86 0 0 0 5.2 22.8L3.5 29l6.36-1.67A12.9 12.9 0 1 0 16.04 3Zm0 23.6c-1.9 0-3.75-.5-5.38-1.44l-.38-.22-3.78.99 1.01-3.68-.25-.4a10.73 10.73 0 1 1 8.78 4.75Zm5.89-8.04c-.32-.16-1.9-.94-2.2-1.04-.29-.11-.5-.16-.72.16-.21.32-.82 1.04-1.01 1.26-.18.21-.37.24-.69.08-.32-.16-1.35-.5-2.57-1.59a9.64 9.64 0 0 1-1.78-2.21c-.19-.32-.02-.5.14-.66.15-.14.32-.37.48-.56.16-.18.21-.32.32-.53.11-.21.05-.4-.03-.56-.08-.16-.72-1.73-.98-2.37-.26-.62-.52-.54-.72-.55h-.61c-.21 0-.56.08-.85.4-.29.32-1.12 1.1-1.12 2.67s1.15 3.1 1.31 3.31c.16.21 2.26 3.45 5.47 4.84.77.33 1.36.53 1.83.68.77.24 1.46.21 2.01.13.62-.09 1.9-.78 2.17-1.53.27-.75.27-1.39.19-1.52-.08-.14-.29-.22-.61-.38Z'/%3E%3C/svg%3E"); }

@media (max-width:900px) {
  .about-visual > p { left:auto; right:0; top:13%; width:35%; padding-left:48px; transform:none; }
  .about-visual > p::before { left:14px; width:23px; }
}

@media (max-width:560px) {
  .about-visual > p { left:auto; right:0; top:12%; width:36%; padding:0 8px 0 38px; font-size:11px; transform:none; }
  .about-visual > p::before { left:10px; width:19px; height:1px; }
}

/* Uma única cor de cabeçalho em todo o site. */
.topbar,
.site-shell-header,
.service-page .site-shell-header {
  background:#18072d !important;
}

@media (max-width:560px) {
  .topbar nav,
  .site-shell-nav {
    background:#18072d !important;
  }
}

/* Destaque do primeiro serviço e parada correta do menu. */
#servicos { scroll-margin-top:104px; }
.service-card.featured { min-height:176px; }
.service-card.featured > span { font-size:11px; letter-spacing:.14em; }
.service-card.featured h3 { font-size:clamp(31px,3.15vw,46px); }
.service-card.featured p { font-size:14px; }
.service-card.featured b { font-size:11px; }

@media (max-width:900px) {
  #servicos { scroll-margin-top:86px; }
  .service-card.featured { min-height:148px; }
}

.hero-caption > div { display:none; }

/* Contato: painel verde Elevix, recorte magenta e tipografia branca */
.contact form {
  background:#2ecc71 !important;
  color:#fff !important;
  box-shadow:0 35px 90px rgba(0,0,0,.5) !important;
}
.contact form::before {
  background:linear-gradient(145deg,#ed1765,#b30f66) !important;
}
.contact form label { color:rgba(255,255,255,.84) !important; }
.contact form input,
.contact form select,
.contact form textarea {
  color:#fff !important;
  border-bottom-color:rgba(255,255,255,.72) !important;
  caret-color:#fff;
}
.contact form input::placeholder,
.contact form textarea::placeholder { color:rgba(255,255,255,.76) !important; opacity:1; }
.contact form select option { color:#280b4c; background:#fff; }
.contact form input:focus,
.contact form select:focus,
.contact form textarea:focus { border-bottom-color:#fff !important; }
.contact form .button {
  background:#ed1765 !important;
  color:#fff !important;
}

.contact-link[href*="5511985550903"] { grid-column:1 / -1; }

/* Rodapé compacto */
.site-footer {
  min-height:0 !important;
  padding:30px 5vw 22px !important;
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:38px !important;
}
.site-footer .footer-brand .logo { width:128px !important; margin:0 !important; }
.site-footer .footer-brand p,
.site-footer .footer-email { display:none !important; }
.footer-nav { flex-direction:row !important; align-items:center !important; flex-wrap:wrap; gap:15px !important; }
.footer-nav small { margin:0 5px 0 0 !important; }
.footer-nav a { font-size:11px !important; }
.footer-social { flex-direction:row !important; align-items:center !important; gap:8px !important; }
.footer-social small { display:none; }
.footer-social a {
  width:42px !important;
  height:42px !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.15) !important;
  border-radius:50%;
  display:grid !important;
  place-items:center;
  font-size:0 !important;
  background-position:center;
  background-repeat:no-repeat;
  background-size:20px;
}
.footer-social a span { display:none; }
.footer-social a[href*="instagram"] { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='white' stroke-width='1.8'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.4' cy='6.7' r='.8' fill='white' stroke='none'/%3E%3C/g%3E%3C/svg%3E"); }
.footer-social a[href*="tiktok"] { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M15.7 3c.3 2.4 1.7 3.8 4.1 4v3.2c-1.5.1-2.9-.4-4-1.2v6.1a6.1 6.1 0 1 1-5.3-6v3.3a2.9 2.9 0 1 0 2 2.7V3h3.2Z'/%3E%3C/svg%3E"); }
.footer-social a[href*="wa.me"] { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='white' d='M16 4A12 12 0 0 0 5.9 22.5L4.3 28l5.7-1.5A12 12 0 1 0 16 4Zm5.6 17.2c-.2.7-1.4 1.3-2 1.4-.5.1-1.2.1-1.9-.1-3.9-1.2-6.4-5-6.6-5.3-.2-.3-1.6-2.1-1.6-4 0-1.9 1-2.9 1.4-3.3.4-.4.8-.5 1.1-.5h.8c.2 0 .5 0 .7.6l1 2.4c.1.2.1.5 0 .7l-.5.8c-.2.2-.4.4-.2.7.2.3.9 1.5 2 2.4 1.4 1.2 2.5 1.6 2.9 1.8.3.2.5.1.7-.1l.9-1.1c.2-.3.5-.3.8-.2l2.3 1.1c.3.2.6.2.6.4.1.1.1.6-.1 1.3Z'/%3E%3C/svg%3E"); }
.footer-social a[href^="mailto"] { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='white' stroke-width='1.8'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m4 7 8 6 8-6'/%3E%3C/g%3E%3C/svg%3E"); }
.footer-bottom {
  grid-column:1/-1 !important;
  margin-top:2px !important;
  padding-top:16px !important;
  font-size:11px;
}
.footer-bottom small:nth-child(2),
.footer-bottom a { display:none !important; }

@media(max-width:900px){
  .site-footer { grid-template-columns:1fr auto !important; gap:22px !important; }
  .footer-nav { grid-column:1/-1; order:3; }
  .footer-bottom { order:4; }
}
@media(max-width:560px){
  .site-footer { padding-top:28px !important; grid-template-columns:1fr !important; }
  .footer-social { justify-content:flex-start; }
  .footer-nav { order:3; }
}

/* Alinhamento óptico do logo no hero: compensa a transparência do arquivo */
@media (max-width:900px) {
  .hero-logo-lockup {
    width:min(94vw,560px) !important;
    margin-top:-2px !important;
    margin-left:-9vw !important;
    margin-bottom:4px !important;
  }
  .hero-slogan { margin-top:10px !important; }
  .hero-brand .actions { margin-top:48px !important; }
}

@media (max-width:560px) {
  .hero-logo-lockup {
    width:96vw !important;
    margin-top:-8px !important;
    margin-left:-12vw !important;
  }
  .hero-brand .actions { margin-top:54px !important; }
}

/* Uma unica grade lateral para toda a home. */
@media (min-width: 901px) {
  .topbar {
    padding-left: 7vw !important;
    padding-right: 7vw !important;
  }

  .layered-hero {
    padding-left: 7vw !important;
    padding-right: 7vw !important;
  }

  .hero-caption {
    left: 7vw !important;
    right: 7vw !important;
  }

  #essencia.section,
  #servicos.section,
  #metodo.section,
  #portfolio.section,
  #sobre.section,
  #blog.section,
  #contato.section,
  .quote {
    padding-left: 7vw !important;
    padding-right: 7vw !important;
  }

  .site-footer {
    padding-left: 7vw !important;
    padding-right: 7vw !important;
  }
}

#inicio,
#essencia,
#servicos,
#metodo,
#portfolio,
#sobre,
#blog,
#contato {
  scroll-margin-top: 84px;
}

@media (max-width: 900px) {
  .topbar {
    padding-left: 6vw !important;
    padding-right: 6vw !important;
  }

  #inicio,
  #essencia,
  #servicos,
  #metodo,
  #portfolio,
  #sobre,
  #blog,
  #contato {
    scroll-margin-top: 70px;
  }
}

/* Capas visuais para a prévia do blog */
.posts a {
  position:relative;
  min-height:430px !important;
  padding:0 28px 28px !important;
  overflow:hidden;
}
.posts > a > span:first-child { display:none !important; }
.posts a::before {
  content:"";
  display:block;
  height:180px;
  margin:0 -28px 28px;
  background:
    radial-gradient(circle at 72% 42%,rgba(255,255,255,.3) 0 3%,transparent 4%),
    radial-gradient(circle at 72% 42%,transparent 0 19%,rgba(255,255,255,.18) 19.4% 20%,transparent 20.4%),
    radial-gradient(circle at 72% 42%,transparent 0 32%,rgba(255,255,255,.12) 32.4% 33%,transparent 33.4%),
    linear-gradient(135deg,#280b4c,#e91e63);
}
.posts a:nth-child(2)::before {
  background:
    radial-gradient(circle at 28% 72%,rgba(255,255,255,.32) 0 3%,transparent 4%),
    radial-gradient(circle at 28% 72%,transparent 0 20%,rgba(255,255,255,.18) 20.4% 21%,transparent 21.4%),
    linear-gradient(135deg,#0b1710,#2ecc71);
}
.posts a:nth-child(3)::before {
  background:
    linear-gradient(35deg,transparent 42%,rgba(255,255,255,.15) 42.5% 43%,transparent 43.5%),
    radial-gradient(circle at 70% 35%,rgba(255,255,255,.28) 0 4%,transparent 4.5%),
    linear-gradient(135deg,#09030f,#6a0572 58%,#e91e63);
}
.posts a > span {
  position:absolute;
  top:112px;
  left:28px;
  z-index:2;
  color:#fff !important;
  font-size:54px !important;
  text-shadow:0 4px 24px rgba(0,0,0,.24);
}
.posts small { margin-top:0 !important; }
.posts h3 { margin-top:22px; }

.whatsapp::before { display:none !important; }
.whatsapp svg { width:30px; height:30px; display:block; }

.posts a:nth-child(1)::before { background:url('./assets/blog/presenca-social-search-v2.webp') center/cover no-repeat !important; }
.posts a:nth-child(2)::before { background:url('./assets/blog/seo-performance-v2.webp') center/cover no-repeat !important; }
.posts a:nth-child(3)::before { background:url('./assets/blog/google-local-v2.webp') center/cover no-repeat !important; }

/* Uma unica regua horizontal para toda a home. */
@media(min-width:901px){
  .topbar{padding-left:7vw!important;padding-right:7vw!important}
  .topbar nav{margin-left:0!important;gap:clamp(20px,1.75vw,31px)!important}
  .topbar nav a{font-size:13px!important;font-weight:700!important;letter-spacing:.025em!important}
  .topbar .button.small{margin-left:auto!important}
  .layered-hero,#essencia.section,#servicos.section,#metodo.section,#portfolio.section,#sobre.section,#blog.section,#contato.section,.quote,.site-footer{padding-left:7vw!important;padding-right:7vw!important}
  .hero-caption{left:7vw!important;right:7vw!important}
}
@media(max-width:900px){
  .topbar,.layered-hero,#essencia.section,#servicos.section,#metodo.section,#portfolio.section,#sobre.section,#blog.section,#contato.section,.quote,.site-footer{padding-left:6vw!important;padding-right:6vw!important}
}

/* Símbolos do ecossistema: substituem os textos nas órbitas da Home. */
.ecosystem-nodes .orbit-symbol {
  width: 48px;
  height: 48px;
  padding: 0;
  justify-content: center;
  border-color: rgba(255,255,255,.28);
  background: radial-gradient(circle at 34% 27%, rgba(233,30,99,.25), rgba(12,6,18,.88) 67%);
  box-shadow: 0 0 0 1px rgba(233,30,99,.1), 0 9px 28px rgba(0,0,0,.34), inset 0 0 18px rgba(119,50,180,.14);
}
.ecosystem-nodes .orbit-symbol::before { display:none; }
.ecosystem-nodes .orbit-symbol svg {
  width: 24px;
  height: 24px;
  overflow: visible;
  fill: none;
  stroke: #fff;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 5px rgba(233,30,99,.34));
}
.ecosystem-nodes .orbit-symbol .orbit-fill { fill:#ff315f; stroke:none; }
.ecosystem-nodes .orbit-symbol-4 svg { stroke:#ff315f; }
.ecosystem-nodes .orbit-symbol-5 svg { stroke:#78b9ff; }
.ecosystem-nodes .orbit-symbol-7 svg { stroke:#70e5a7; }
.ecosystem-nodes .orbit-symbol-9 svg { stroke:#c27cff; stroke-width:2; }
.ecosystem-nodes .orbit-symbol-10 svg { stroke:#31d878; }
.ecosystem-nodes .orbit-symbol-12 svg { stroke:#d782ff; }
.ecosystem-nodes .orbit-symbol-3 svg { stroke:#ff4d8d; }
.ecosystem-nodes .orbit-symbol-13 svg { stroke:#fff; filter:drop-shadow(-2px 0 0 #25f4ee) drop-shadow(2px 0 0 #fe2c55); }
.ecosystem-nodes .google-mark { stroke:none; filter:drop-shadow(0 0 5px rgba(255,255,255,.22)); }
.ecosystem-nodes .google-mark .g-red { fill:#ea4335; }
.ecosystem-nodes .google-mark .g-yellow { fill:#fbbc05; }
.ecosystem-nodes .google-mark .g-green { fill:#34a853; }
.ecosystem-nodes .google-mark .g-blue { fill:#4285f4; }
.ecosystem-nodes .google-ads-mark { filter:drop-shadow(0 0 5px rgba(71,135,255,.36)); }
.ecosystem-nodes .google-ads-mark .ads-blue { fill:#4285f4; stroke:none; }
.ecosystem-nodes .google-ads-mark .ads-yellow { fill:#fbbc04; stroke:none; }
.ecosystem-nodes .google-ads-mark .ads-green { fill:#34a853; stroke:none; }
.home-hero .orbit-outer span { --radius:min(16.1vw,245px); }
.home-hero .orbit-inner span { --radius:min(13.2vw,201px); }
.home-hero .orbit-outer .orbit-symbol { animation-duration:32s; animation-delay:calc(var(--i) * -4s); }
@media(max-width:560px){
  .orbit-outer .orbit-symbol,.orbit-inner .orbit-symbol{width:37px;height:37px;padding:0}
  .ecosystem-nodes .orbit-symbol svg{width:19px;height:19px}
  .home-hero .orbit-outer span{--radius:31.5vw}
  .home-hero .orbit-inner span{--radius:25vw}
}

/* Home: a esfera permanece limpa e os canais percorrem somente as linhas externas. */
.ecosystem-nodes .facebook-mark { stroke: none; filter: drop-shadow(0 0 6px rgba(24,119,242,.5)); }
.ecosystem-nodes .facebook-mark .facebook-disc { fill: #1877f2; }
.ecosystem-nodes .facebook-mark .facebook-f { fill: #fff; }

@media (min-width: 901px) {
  .home-hero .sphere-scene {
    top: 27px !important;
    right: -1vw !important;
    bottom: -27px !important;
    width: 50vw !important;
  }

  .home-hero .sphere-float {
    width: min(28vw, 430px) !important;
  }

  .home-hero .ring-one {
    width: min(34.4vw, 525px) !important;
    aspect-ratio: 1;
  }

  .home-hero .ring-two {
    width: min(30.1vw, 460px) !important;
    aspect-ratio: 1;
  }

  .home-hero .orbit-outer span {
    --radius: min(17.2vw, 262px);
  }

  .home-hero .orbit-inner span {
    --radius: min(15.05vw, 230px);
  }
}

/* Garantia de precedencia: o ecossistema termina com uma unica geometria. */
.home-hero .sphere-scene { transform:none!important; transition:none!important; }
.home-hero .sphere-ring { left:50%!important; top:50%!important; margin:0!important; box-sizing:border-box!important; transform-origin:50% 50%!important; }
.home-hero .ring-one { width:min(34.4vw,524px)!important; height:min(34.4vw,524px)!important; animation:ecoRingForward 26s linear infinite!important; }
.home-hero .ring-two { width:min(30.1vw,460px)!important; height:min(30.1vw,460px)!important; animation:ecoRingReverse 20s linear infinite!important; }
.home-hero .orbit-outer span { --radius:min(17.2vw,262px)!important; }
.home-hero .orbit-inner span { --radius:min(15.05vw,230px)!important; }
.home-hero .ecosystem-nodes,.home-hero .ecosystem-nodes span { pointer-events:none!important; touch-action:none!important; user-select:none!important; }

@media(max-width:900px){
  .home-hero .ring-one{width:min(76vw,410px)!important;height:min(76vw,410px)!important}
  .home-hero .ring-two{width:min(62vw,332px)!important;height:min(62vw,332px)!important}
  .home-hero .orbit-outer span{--radius:min(38vw,205px)!important}
  .home-hero .orbit-inner span{--radius:min(31vw,166px)!important}
}
@media(max-width:560px){
  .home-hero .ring-one{width:63vw!important;height:63vw!important}
  .home-hero .ring-two{width:50vw!important;height:50vw!important}
  .home-hero .orbit-outer span{--radius:31.5vw!important}
  .home-hero .orbit-inner span{--radius:25vw!important}
}

/* Ajuste final: cada satelite percorre exatamente o centro da linha orbital. */
@keyframes elevixOrbitOuterExact {
  from {
    transform: translate(-50%,-50%) rotate(var(--orbit-angle)) translateX(var(--radius)) rotate(var(--orbit-counter-angle));
  }
  to {
    transform: translate(-50%,-50%) rotate(calc(var(--orbit-angle) + 360deg)) translateX(var(--radius)) rotate(calc(var(--orbit-counter-angle) - 360deg));
  }
}

@keyframes elevixOrbitInnerExact {
  from {
    transform: translate(-50%,-50%) rotate(var(--orbit-angle)) translateX(var(--radius)) rotate(var(--orbit-counter-angle));
  }
  to {
    transform: translate(-50%,-50%) rotate(calc(var(--orbit-angle) - 360deg)) translateX(var(--radius)) rotate(calc(var(--orbit-counter-angle) + 360deg));
  }
}

.home-hero .orbit-outer .orbit-symbol {
  animation: elevixOrbitOuterExact 32s linear infinite !important;
  animation-delay: 0s !important;
}

.home-hero .orbit-inner .orbit-symbol {
  animation: elevixOrbitInnerExact 25s linear infinite !important;
  animation-delay: 0s !important;
}

.home-hero .ecosystem-nodes .orbit-symbol svg {
  width: 28px !important;
  height: 28px !important;
}

.home-hero .hero-action-kicker {
  margin: 22px 0 10px;
  color: #ff2b70;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
  line-height: 1.25;
  text-transform: uppercase;
}

.home-hero .hero-action-kicker::before {
  content: "";
  display: inline-block;
  width: 22px;
  height: 1px;
  margin: 0 9px 3px 0;
  background: currentColor;
}

.home-hero .hero-action-kicker + .actions { margin-top: 0 !important; }

@media(max-width:560px) {
  .home-hero .ecosystem-nodes .orbit-symbol svg {
    width: 22px !important;
    height: 22px !important;
  }
  .home-hero .hero-action-kicker { margin-top: 18px; }
}

/* Fechamento mobile da Home: uma unica regra para menu, texto e ecossistema. */
@media (max-width:560px) {
  .home-page .topbar {
    height: 68px !important;
    min-height: 68px !important;
    padding: 0 22px !important;
  }

  /* Gaveta lateral: o menu desliza da direita, estreito, sem
     tomar a tela toda. O resto da pagina so escurece (nao fica
     coberto por um roxo solido). */
  .home-page .topbar nav {
    display: flex !important;
    flex-direction: column !important;
    top: 68px !important;
    right: 16px !important;
    left: auto !important;
    bottom: auto !important;
    width: min(66vw, 250px) !important;
    height: auto !important;
    max-height: calc(100dvh - 90px) !important;
    overflow-y: auto !important;
    padding: 18px 22px 22px !important;
    background: linear-gradient(165deg, #34125f 0%, #23093f 55%, #17062c 100%) !important;
    box-shadow: 0 20px 50px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.1) !important;
    border-radius: 10px !important;
    overflow-x: hidden !important;
    transform: translateY(-16px) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: transform .28s ease, opacity .28s ease !important;
    z-index: 150 !important;
  }

  .home-page .topbar nav.open {
    transform: translateY(0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .home-page.menu-locked {
    overflow-x: hidden !important;
  }

  .home-page.menu-locked::after {
    content: "" !important;
    position: fixed !important;
    inset: 0 !important;
    background: rgba(7,3,13,.82) !important;
    backdrop-filter: blur(6px) !important;
    z-index: 140 !important;
  }

  .home-page .menu-toggle {
    position: relative !important;
    z-index: 20 !important;
    width: 44px !important;
    height: 44px !important;
    padding: 7px !important;
  }

  .home-page .layered-hero {
    display: flex !important;
    flex-direction: column !important;
    min-height: auto !important;
    padding: 76px 22px 32px !important;
    gap: 16px !important;
    overflow-x: hidden !important;
  }

  .home-page .hero-brand {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }

  .home-page .hero-logo-lockup {
    width: min(76vw, 280px) !important;
    aspect-ratio: 3.05 / 1 !important;
    margin: 0 0 14px 0 !important;
    overflow-x: hidden !important;
  }

  .home-page .hero-logo-lockup img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    /* -9.8% alinha a marca "E" exatamente com a margem esquerda do
       texto abaixo (medido no PNG: a arte comeca em 9.8% da largura,
       nao 6.5%, o que deixava o logo ~9px mais a direita). */
    transform: translate(-9.8%, -26.5%) !important;
  }

  .home-page .hero-slogan {
    max-width: 330px !important;
    margin: 0 0 14px !important;
    font-size: clamp(34px, 10.2vw, 42px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
  }

  .home-page .hero-ecosystem-copy {
    width: 100% !important;
    max-width: 340px !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  .home-page .hero-action-kicker {
    margin: 16px 0 10px !important;
  }

  .home-page .hero-brand .actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 14px !important;
    margin: 0 !important;
  }

  .home-page .hero-brand .actions a {
    margin: 0 !important;
  }

  .home-page .sphere-scene {
    width: 100% !important;
    height: 400px !important;
    min-height: 400px !important;
    margin: 26px 0 20px !important;
    inset: auto !important;
  }

  .home-page .sphere-float {
    width: min(76vw, 296px) !important;
  }

  /* Aneis maiores que a esfera (como no desktop), para ficarem
     visivelmente por fora, nao por dentro/atras dela. */
  .home-page .home-hero .ring-one {
    width: min(91vw, 356px) !important;
    height: min(91vw, 356px) !important;
  }

  .home-page .home-hero .ring-two {
    width: min(80vw, 312px) !important;
    height: min(80vw, 312px) !important;
  }

  .home-page .home-hero .orbit-outer span {
    --radius: min(45.5vw, 178px) !important;
  }

  .home-page .home-hero .orbit-inner span {
    --radius: min(40vw, 156px) !important;
  }

  .home-page .home-hero .orbit-outer .orbit-symbol,
  .home-page .home-hero .orbit-inner .orbit-symbol {
    width: 38px !important;
    height: 38px !important;
  }

  .home-page .hero-caption {
    width: 100% !important;
    margin-top: 0 !important;
  }

  .home-page .global-whatsapp {
    width: 50px !important;
    height: 50px !important;
    right: 16px !important;
    bottom: 16px !important;
  }
}

/* No mobile/tablet a esfera fica pequena e perto do texto: a mesma
   inclinacao (rotateZ ate -22deg) que no desktop passa despercebida
   fica "torta" num quadro compacto. Reduz bastante o giro, mantendo
   so a pulsacao de tamanho/profundidade (sphereFloat) intacta. */
@media (max-width: 900px) {
  .home-page .moving-sphere {
    animation: spherePoseCompact 7s ease-in-out infinite alternate !important;
  }
}
@keyframes spherePoseCompact {
  0% { transform: rotateZ(-4deg) rotateY(-2deg) rotateX(1deg); }
  100% { transform: rotateZ(2deg) rotateY(2deg) rotateX(-1deg); }
}

/* O cabecalho (.topbar) tem z-index:100, e o menu (nav) fica DENTRO
   dele - entao mesmo o menu tendo z-index:150, ele so compete dentro
   do contexto de empilhamento do .topbar (limitado a 100). O fundo
   escurecido (z-index:140) ficava por cima de tudo, bloqueando
   cliques nos links mesmo aparecendo atras visualmente. */
.topbar {
  z-index: 200 !important;
}

/* Visual mais bonito para a gaveta do menu, so no mobile de verdade:
   barra de destaque no topo, divisorias sutis entre os itens e brilho
   rosa no hover, no estilo da marca. */
@media (max-width: 560px) {
  .home-page .topbar nav {
    position: fixed !important;
  }
  .home-page .topbar nav::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #ef1760, #8b1bb4, #ef1760);
  }
  .home-page .topbar nav a {
    display: block;
    padding: 12px 4px !important;
    border-bottom: 1px solid rgba(255,255,255,.1);
    transition: color .2s ease, text-shadow .2s ease, padding-left .2s ease;
  }
  .home-page .topbar nav a:last-child {
    border-bottom: 0;
  }
  .home-page .topbar nav a:hover,
  .home-page .topbar nav a:active {
    color: #ff5b93 !important;
    padding-left: 12px !important;
    text-shadow: 0 0 18px rgba(239,23,96,.65);
  }
}

/* Regra final: o quadro do logo nunca pode exibir rolagem interna. */
.home-hero .hero-logo-lockup{
  overflow:hidden!important;
  overflow-x:hidden!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.home-hero .hero-logo-lockup::-webkit-scrollbar{
  display:none!important;
  width:0!important;
  height:0!important;
}

/* V52 FINAL: conjunto menor, centralizado e sempre dentro das margens. */
@media (min-width:901px){
  .home-page .home-hero .sphere-float{width:min(26.5vw,405px)!important}
  .home-page .home-hero .ring-one{width:min(32.5vw,496px)!important;height:min(32.5vw,496px)!important}
  .home-page .home-hero .ring-two{width:min(28.5vw,436px)!important;height:min(28.5vw,436px)!important}
  .home-page .home-hero .orbit-outer span{--radius:min(16.25vw,248px)!important}
  .home-page .home-hero .orbit-inner span{--radius:min(14.25vw,218px)!important}
}
@media (max-width:900px){
  .home-page .layered-hero{overflow-x:hidden!important}
  .home-page .hero-brand{display:block!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:4!important;order:1!important}
  .home-page .sphere-scene{order:2!important;width:100%!important;height:370px!important;min-height:370px!important;margin:20px 0 16px!important;inset:auto!important}
  .home-page .home-hero .sphere-float{width:min(67vw,270px)!important}
  .home-page .home-hero .ring-one{width:min(83vw,334px)!important;height:min(83vw,334px)!important}
  .home-page .home-hero .ring-two{width:min(73vw,294px)!important;height:min(73vw,294px)!important}
  .home-page .home-hero .orbit-outer span{--radius:min(41.5vw,167px)!important}
  .home-page .home-hero .orbit-inner span{--radius:min(36.5vw,147px)!important}
  .home-page .home-hero .orbit-outer .orbit-symbol,.home-page .home-hero .orbit-inner .orbit-symbol{width:34px!important;height:34px!important}
  .home-page .hero-caption{order:3!important}
}
@media (max-width:560px){
  .home-page .sphere-scene{height:330px!important;min-height:330px!important;margin:16px 0 12px!important}
  .home-page .home-hero .sphere-float{width:min(62vw,244px)!important}
  .home-page .home-hero .ring-one{width:min(75vw,296px)!important;height:min(75vw,296px)!important}
  .home-page .home-hero .ring-two{width:min(65vw,256px)!important;height:min(65vw,256px)!important}
  .home-page .home-hero .orbit-outer span{--radius:min(37.5vw,148px)!important}
  .home-page .home-hero .orbit-inner span{--radius:min(32.5vw,128px)!important}
  .home-page .home-hero .orbit-outer .orbit-symbol,.home-page .home-hero .orbit-inner .orbit-symbol{width:32px!important;height:32px!important}
  .home-page .home-hero .ecosystem-nodes .orbit-symbol svg{width:18px!important;height:18px!important}
}

:root{--purple:#280b4c;--magenta:#e91e63;--green:#2ecc71;--violet:#6a0572;--petrol:#1f4e6e;--cloud:#ececec;--ink:#120b18;--paper:#f5f3f6;--white:#fff;--muted:#aaa0b1;--line:rgba(255,255,255,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--purple);color:#fff;font-family:'Inter',sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.skip{position:fixed;left:16px;top:-70px;z-index:999;background:var(--magenta);padding:12px 18px}.skip:focus{top:16px}.topbar{height:84px;padding:0 4.5vw;position:fixed;z-index:100;inset:0 0 auto;display:flex;align-items:center;border-bottom:1px solid var(--line);background:rgba(24,7,45,.84);backdrop-filter:blur(20px)}.logo{width:150px;display:block}.logo img{display:block;width:100%}.topbar nav{display:flex;gap:2.1vw;margin-left:auto}.topbar nav a{font-size:11px;font-weight:600;letter-spacing:.06em;color:#d7cfdd}.topbar nav a:hover,.topbar nav a:active{color:#ff6a9e}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;padding:15px 19px;border:0;background:var(--magenta);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:.25s}.button:hover,.button:active{background:#ff2e74;transform:translateY(-2px);box-shadow:0 8px 28px rgba(255,46,116,.45),0 0 26px 4px rgba(255,46,116,.55)}.button.small{margin-left:2.5vw;padding:12px 15px}.menu-toggle{display:none;background:none;border:0}.menu-toggle i{display:block;width:25px;height:1px;background:#fff;margin:7px}
.hero{min-height:100svh;padding:136px 4.5vw 46px;display:grid;grid-template-columns:1.02fr .98fr;gap:2vw;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 80% 42%,rgba(106,5,114,.28),transparent 34%),linear-gradient(135deg,#17072c 0%,#280b4c 62%,#21083d 100%)}.hero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px);background-size:78px 78px;mask-image:linear-gradient(#000,transparent 94%)}.hero-copy,.hero-art{position:relative;z-index:2}.kicker,.tag{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:#c2b6ca}.kicker{display:flex;align-items:center;gap:10px}.kicker span{width:7px;height:7px;border-radius:50%;background:var(--magenta);box-shadow:0 0 16px rgba(233,30,99,.8)}.hero h1{font:700 clamp(58px,7.3vw,110px)/.88 'Manrope',sans-serif;letter-spacing:-.07em;margin:28px 0;max-width:850px}.hero h1 em{font-style:normal;color:#ff4b88}.hero-copy>p:not(.kicker):not(.breadcrumbs){max-width:570px;font-size:16px;line-height:1.7;color:#c2b8c9}.actions{display:flex;align-items:center;gap:30px;margin-top:34px}.text-link{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid;padding-bottom:7px}.text-link:hover,.text-link:active{color:#ff4b88}.hero-art{height:min(72vw,700px);max-height:700px;display:grid;place-items:center;isolation:isolate}.hero-art:before,.hero-art:after{content:'';position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.13)}.hero-art:before{width:83%;aspect-ratio:1}.hero-art:after{width:64%;aspect-ratio:1;border-color:rgba(233,30,99,.34);animation:orbit 18s linear infinite}.hero-art img{position:relative;z-index:-1;width:138%;height:100%;object-fit:cover;object-position:72% center;clip-path:circle(38% at 62% 50%);filter:saturate(.78) brightness(.9);mix-blend-mode:screen;transform:translateX(-3%);opacity:.96}.hero-art small{position:absolute;bottom:8%;left:2%;font-size:11px;font-weight:700;letter-spacing:.18em}.hero-foot{position:absolute;bottom:25px;left:4.5vw;right:4.5vw;display:flex;align-items:center;gap:15px;color:#8f809d;font-size:11px;text-transform:uppercase;letter-spacing:.14em}.hero-foot i{height:1px;flex:1;background:var(--line)}@keyframes orbit{to{transform:rotate(360deg)}}
.section{padding:118px 7vw}.manifest{display:grid;grid-template-columns:25% 1fr;gap:5vw;background:var(--paper);color:var(--ink)}.manifest .tag{color:#766b7c}.manifest h2{font:700 clamp(43px,5.7vw,80px)/1.02 'Manrope';letter-spacing:-.055em;margin:0;color:var(--purple)}.manifest div>p{max-width:850px;font-size:20px;line-height:1.65;color:#665d6b}.manifest strong{color:var(--magenta)}.services{background:#19072f}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:68px}.section-head h2,.method h2,.about h2,.contact h2{font:700 clamp(43px,5.4vw,76px)/1 'Manrope';letter-spacing:-.06em;margin:15px 0 0}.section-head>p{max-width:390px;line-height:1.7;color:#a99daf}.service-grid{border-top:1px solid var(--line)}.service-card{min-height:152px;padding:27px 0;display:grid;grid-template-columns:17% 1fr 31% 110px;align-items:center;border-bottom:1px solid var(--line);transition:.25s;position:relative}.service-card:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(233,30,99,.13),transparent);transform:scaleX(0);transform-origin:left;transition:.35s}.service-card>span{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#ff6399;z-index:1}.service-card h3{font:600 clamp(24px,2.7vw,40px)/1.05 'Manrope';letter-spacing:-.04em;margin:0;z-index:1}.service-card p{color:#9f94a6;font-size:13px;line-height:1.55;padding-right:35px;z-index:1}.service-card b{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#fff;z-index:1;text-align:right}.service-card:hover:before{transform:scaleX(1)}.service-card:hover h3{color:#ff6399;transform:translateX(7px);transition:.25s}.service-card.featured{background:none;border-color:var(--line)}.service-call{min-height:210px;margin-top:55px;padding:40px 4vw;background:var(--magenta);display:grid;grid-template-columns:70px 1fr 1fr auto;align-items:center;gap:30px}.service-call i{font-style:normal;font-size:32px}.service-call h3{font:700 32px/1.08 'Manrope';letter-spacing:-.04em;margin:0}.service-call p{line-height:1.6;color:#f8d7e3}.service-call a{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid;padding-bottom:7px}.marquee{background:#fff;color:var(--purple);overflow:hidden;white-space:nowrap}.marquee span{display:block;padding:19px;font:800 18px 'Manrope';letter-spacing:.02em;animation:move 17s linear infinite}@keyframes move{to{transform:translateX(-45%)}}
.method{display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw;background:var(--purple)}.method-intro{position:sticky;top:120px;height:max-content}.method-intro>p:last-child{max-width:420px;line-height:1.7;color:#a99daf}.method ol{list-style:none;margin:0;padding:0}.method li{display:grid;grid-template-columns:70px 1fr;border-top:1px solid var(--line);padding:34px 0}.method li:last-child{border-bottom:1px solid var(--line)}.method li>b{font-size:11px;color:#ff6399}.method h3{font:600 29px 'Manrope';letter-spacing:-.035em;margin:0 0 8px}.method li p{margin:0;color:#9f93a8}.portfolio,.blog{background:var(--paper);color:var(--ink)}.portfolio .tag,.blog .tag{color:#776d7d}.portfolio .section-head h2,.blog .section-head h2{color:var(--purple)}.portfolio .section-head>p{color:#6e6573}.projects{display:grid;grid-template-columns:1.15fr .85fr;gap:0;border-top:1px solid #d7d1da;border-left:1px solid #d7d1da}.project{background:#fff;padding-bottom:28px;border-right:1px solid #d7d1da;border-bottom:1px solid #d7d1da;overflow:hidden}.project.large{grid-row:span 2}.project-art{min-height:300px;padding:32px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.large .project-art{min-height:646px}.project-art:before{content:'';position:absolute;width:310px;height:310px;border:52px solid rgba(255,255,255,.12);border-radius:50%}.project-art strong{position:relative;font:800 clamp(48px,6.5vw,98px)/.84 'Manrope';letter-spacing:-.075em;text-align:center}.project-art i{position:absolute;bottom:26px;right:28px;font-style:normal;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.caio{background:linear-gradient(145deg,#1b0a31,#6a0572);color:#fff}.our{background:linear-gradient(145deg,#1f4e6e,#126e82);color:#fff}.infinity{background:linear-gradient(145deg,#d7f7e3,#2ecc71);color:#143c23}.project>small,.project>h3,.project>b{margin-left:27px;margin-right:27px}.project>small{display:block;margin-top:24px;color:var(--magenta);font-weight:700;text-transform:uppercase;letter-spacing:.1em}.project>h3{font:700 25px/1.2 'Manrope';letter-spacing:-.04em;color:var(--purple)}.project>b{font-size:11px;text-transform:uppercase;letter-spacing:.1em}.about{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center;background:#17072b}.about-art{min-height:610px;border:1px solid var(--line);position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle,rgba(233,30,99,.24),transparent 58%)}.about-art:before,.about-art:after{content:'';position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.14)}.about-art:before{width:70%;aspect-ratio:1}.about-art:after{width:47%;aspect-ratio:1;border-color:rgba(233,30,99,.55)}.about-art>span{font:800 170px 'Manrope';letter-spacing:-.12em;color:var(--magenta)}.about-art>p{position:absolute;left:27px;bottom:25px;font-size:11px;font-weight:700;letter-spacing:.16em}.about .lead{font:600 23px/1.5 'Manrope'}.about>div:last-child>p:not(.tag){color:#aa9db4;line-height:1.7}.founders{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px;padding-top:24px;border-top:1px solid var(--line)}.founders b{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:var(--magenta)}.founders h3{font:700 18px 'Manrope';margin:12px 0 5px}.founders p{font-size:12px!important}.quote{padding:105px 6vw;text-align:center;background:#fff;color:var(--purple)}.quote>span{font-size:62px;color:var(--magenta)}.quote blockquote{font:700 clamp(38px,4.8vw,68px)/1.1 'Manrope';letter-spacing:-.06em;margin:0 auto 30px}.quote em{font-style:normal;color:var(--magenta)}.quote p{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em}.posts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d5cfd8;border-left:1px solid #d5cfd8}.posts a{min-height:390px;padding:28px;border-right:1px solid #d5cfd8;border-bottom:1px solid #d5cfd8;display:flex;flex-direction:column;transition:.25s;background:#fff}.posts a:hover{background:#faf7fb}.posts span{font:800 60px 'Manrope';letter-spacing:-.07em;color:#ebe6ed}.posts small{margin-top:45px;color:var(--magenta);font-weight:700;text-transform:uppercase;letter-spacing:.11em}.posts h3{font:700 24px/1.2 'Manrope';letter-spacing:-.04em;color:var(--purple)}.posts b{margin-top:auto;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9vw;background:#dff7e8;color:var(--ink)}.contact .tag{color:#227b45}.contact h2{color:var(--purple)}.contact>div>p:not(.tag){max-width:500px;line-height:1.7;color:#4e6657}.direct{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:32px}.direct a{border-bottom:1px solid}.contact form{background:#fff;padding:39px;color:var(--ink)}.contact label{display:block;margin-bottom:23px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;color:#665c6b}.contact input,.contact select,.contact textarea{display:block;width:100%;padding:12px 0;background:none;border:0;border-bottom:1px solid #d8d2da;outline:0;color:var(--ink);text-transform:none;letter-spacing:0}.contact input:focus,.contact select:focus,.contact textarea:focus{border-color:var(--magenta)}.contact form .button{width:100%;margin-top:5px}footer{padding:55px 4.5vw 28px;display:grid;grid-template-columns:1fr 1fr;gap:35px;border-top:1px solid var(--line);background:#120720}footer p{color:#9e91a7;margin:0}footer>div{display:flex;gap:28px;font-size:11px;text-transform:uppercase;letter-spacing:.11em}footer small{grid-column:2;color:#6e5e7a}.whatsapp{position:fixed;right:22px;bottom:22px;z-index:90;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#11351f;font-weight:800;box-shadow:0 12px 32px rgba(0,0,0,.3)}
.service-page .hero{min-height:86svh}.service-page .hero h1{font-size:clamp(52px,7vw,98px)}.service-page .hero-art{max-height:600px}.breadcrumbs{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.11em;color:#aa9ab6}.landing-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;background:var(--paper);color:var(--ink)}.landing-intro .tag{color:#716776}.landing-intro h2,.deliver h2,.process h2,.landing-cta h2{font:700 clamp(41px,4.9vw,70px)/1.03 'Manrope';letter-spacing:-.06em;margin:0}.landing-intro h2,.process h2{color:var(--purple)}.landing-intro p{font-size:20px;line-height:1.65;color:#665d6b}.deliver{background:#19072f}.deliver-grid{display:grid;grid-template-columns:repeat(2,1fr);margin-top:53px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.deliver-grid article{min-height:190px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.deliver-grid span{font-size:11px;font-weight:700;color:#ff6399}.deliver-grid h3{font:600 25px 'Manrope'}.deliver-grid p{color:#a99dad;line-height:1.6}.process{background:#fff;color:var(--ink)}.process ol{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:53px 0 0;border-top:1px solid #d8d1db;border-left:1px solid #d8d1db}.process li{min-height:230px;padding:27px;border-right:1px solid #d8d1db;border-bottom:1px solid #d8d1db}.process b{color:var(--magenta)}.process h3{font:700 24px 'Manrope';margin-top:42px;color:var(--purple)}.process li p{color:#6b626f;line-height:1.6}.landing-cta{text-align:center;padding:100px 6vw;background:var(--magenta)}.landing-cta p{max-width:660px;margin:24px auto 32px;line-height:1.7;color:#f7d7e3}.landing-cta .button{background:var(--purple)}
@media(max-width:900px){.topbar{height:70px}.topbar nav{position:fixed;top:70px;left:0;right:0;display:none;flex-direction:column;background:#19072f;padding:28px 6vw;margin:0;border-bottom:1px solid var(--line)}.topbar nav.open{display:flex}.topbar nav a{font:700 22px 'Manrope'}.topbar .button.small{display:none}.menu-toggle{display:block;margin-left:auto}.hero{grid-template-columns:1fr;padding-top:112px}.hero-art{height:440px}.hero-art img{width:112%;clip-path:circle(39% at 61% 50%)}.hero-foot{position:relative;left:auto;right:auto;bottom:auto;grid-column:1}.section{padding:84px 6vw}.manifest,.method,.about,.contact,.landing-intro{grid-template-columns:1fr}.section-head{flex-direction:column;align-items:flex-start}.service-card{grid-template-columns:18% 1fr 80px}.service-card p{display:none}.service-call{grid-template-columns:50px 1fr}.service-call p,.service-call a{grid-column:2}.method-intro{position:static}.projects{grid-template-columns:1fr}.project.large{grid-row:auto}.large .project-art{min-height:440px}.about-art{min-height:500px;order:2}.posts{grid-template-columns:1fr}.process ol{grid-template-columns:1fr 1fr}footer{grid-template-columns:1fr}footer small{grid-column:auto}}
@media(max-width:560px){.logo{width:132px}.hero h1{font-size:14.5vw}.hero-copy>p:not(.kicker){font-size:14px}.actions{align-items:flex-start;flex-direction:column}.hero-art{height:340px;margin-top:-15px}.hero-art img{width:128%}.manifest h2,.section-head h2,.method h2,.about h2,.contact h2{font-size:40px}.service-card{grid-template-columns:55px 1fr 35px;min-height:130px}.service-card h3{font-size:23px}.service-card b{font-size:0}.service-card b:after{content:'↗';font-size:18px}.service-call{padding:30px 24px;margin-top:35px}.projects .project-art,.large .project-art{min-height:350px}.about-art{min-height:390px}.founders{grid-template-columns:1fr}.process ol,.deliver-grid{grid-template-columns:1fr}.contact{padding-left:0;padding-right:0}.contact>div{padding:0 6vw}.contact form{padding:28px 21px}.quote blockquote{font-size:35px}footer>div{flex-wrap:wrap}.marquee span{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Sistema visual premium das landing pages de serviços */
.service-page .hero { min-height:92svh; padding-left:6vw; padding-right:6vw; background:radial-gradient(circle at 76% 45%,rgba(233,30,99,.2),transparent 28%),radial-gradient(circle at 88% 20%,rgba(46,204,113,.12),transparent 24%),linear-gradient(135deg,#0b0611 0%,#1a082e 45%,#280b4c 100%); }
.service-page .hero::before { background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.045),transparent 35%); mask-image:none; }
.service-page .hero-copy { max-width:760px; }
.service-page .hero h1 { max-width:850px; font-size:clamp(54px,6.4vw,102px); line-height:.92; }
.service-page .hero-art { height:min(58vw,670px); max-height:670px; overflow:visible; }
.service-page .hero-art img { opacity:0; }
.service-page .hero-art::before { width:72%; border-color:rgba(255,255,255,.2); box-shadow:0 0 70px rgba(233,30,99,.12),inset 0 0 70px rgba(46,204,113,.06); }
.service-page .hero-art::after { width:54%; border:0; background:conic-gradient(from 15deg,rgba(233,30,99,.98),rgba(40,11,76,.24),rgba(46,204,113,.9),rgba(255,255,255,.78),rgba(233,30,99,.98)); box-shadow:inset -35px -30px 80px rgba(3,2,7,.8),inset 22px 18px 35px rgba(255,255,255,.26),0 35px 100px rgba(0,0,0,.45),0 0 55px rgba(233,30,99,.3); animation:serviceOrb 13s ease-in-out infinite alternate; }
.service-page .hero-art .orbit { position:absolute; width:88%; aspect-ratio:1; border-radius:50%; border:1px solid rgba(46,204,113,.32); transform:rotate(-18deg) scaleY(.56); box-shadow:0 0 22px rgba(46,204,113,.12); }
.service-page .hero-art .orbit::before,.service-page .hero-art .orbit::after { content:""; position:absolute; border-radius:50%; background:#fff; box-shadow:0 0 20px #2ecc71; }
.service-page .hero-art .orbit::before { width:9px; height:9px; left:12%; top:21%; }
.service-page .hero-art .orbit::after { width:7px; height:7px; right:7%; bottom:26%; background:#ff4b88; box-shadow:0 0 20px #e91e63; }
.service-page .hero-art small { left:auto; right:3%; bottom:6%; padding:8px 12px; border:1px solid rgba(255,255,255,.18); background:rgba(10,5,17,.52); backdrop-filter:blur(10px); }
@keyframes serviceOrb { from { transform:rotate(-8deg) scale(.96); } to { transform:rotate(18deg) scale(1.04); } }

@media(max-width:900px){
  .service-page .hero { padding-top:110px; }
  .service-page .hero-art { height:440px; margin-top:-25px; }
  .service-page .hero-art::before { width:min(74vw,390px); }
  .service-page .hero-art::after { width:min(55vw,290px); }
  .service-page .hero-art .orbit { width:min(88vw,460px); }
}

/* Assinatura da Elevix dentro das paginas de servico, sem alterar a home. */
.service-hero-logo{position:relative;display:block;width:170px;height:64px;margin:0 0 12px -13px;overflow:hidden}
.service-hero-logo img{position:absolute;left:-18px;top:-49px;width:190px;height:190px;max-width:none;object-fit:contain}

/* Visual editorial especifico substitui a esfera generica da landing page. */
.service-page .hero-art.service-visual{overflow:hidden;height:min(46vw,580px);border:1px solid rgba(255,255,255,.12);background:#08030d;box-shadow:0 38px 100px rgba(0,0,0,.42)}
.service-page .hero-art.service-visual::before{content:"";position:absolute;z-index:2;inset:0;width:auto;aspect-ratio:auto;border:0;border-radius:0;background:linear-gradient(90deg,rgba(8,3,13,.42),transparent 35%),linear-gradient(180deg,transparent 65%,rgba(8,3,13,.5));box-shadow:none;pointer-events:none}
.service-page .hero-art.service-visual::after{display:none}
.service-page .hero-art.service-visual img{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% center;clip-path:none;filter:none;mix-blend-mode:normal;transform:none;opacity:1}
.service-page .hero-art.service-visual small{z-index:3;right:24px;bottom:22px}
@media(max-width:900px){.service-hero-logo{width:150px;height:58px}.service-hero-logo img{left:-16px;top:-43px;width:168px;height:168px}.service-page .hero-art.service-visual{height:min(72vw,460px);margin-top:15px}}

/* Hero das landing pages: logo logo abaixo do menu e imagem específica do serviço. */
@media(min-width:901px){
  .service-page .hero{min-height:auto;padding-top:36px!important;padding-bottom:76px!important;align-items:start}
  .service-page .hero-copy{padding-top:0}
  .service-page .hero-art.service-visual{margin-top:8px}
}
.service-hero-logo{width:164px;height:61px;margin:0 0 18px -12px}
.service-hero-logo img{left:-17px;top:-47px;width:184px;height:184px}
.service-branding-hero .hero-art.service-visual img{object-position:center center}
.service-branding-hero .breadcrumbs{margin-bottom:18px}
@media(max-width:900px){
  .service-page .hero{padding-top:28px!important}
  .service-hero-logo{margin-bottom:14px}
}
.home-hero{display:block;min-height:100svh;padding:0;background:#050407;position:relative}.home-hero:before{content:'';position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,rgba(5,4,7,.08) 55%,rgba(5,4,7,.78) 100%);pointer-events:none}.cinematic-hero{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-caption{position:absolute;z-index:3;left:4.5vw;right:4.5vw;bottom:32px;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;border-top:1px solid rgba(255,255,255,.22);padding-top:18px}.hero-caption>p{margin:0;max-width:360px;color:#d9d1df;font-size:11px;line-height:1.55;text-transform:uppercase;letter-spacing:.11em}.hero-caption>p span{color:#ff4b88}.hero-caption>div{display:flex;align-items:center;gap:28px}.home-hero .text-link{color:#fff}@media(max-width:900px){.home-hero{min-height:88svh}.cinematic-hero{object-position:64% center}.hero-caption{bottom:22px;align-items:flex-start;flex-direction:column;gap:16px}.hero-caption>div{width:100%;justify-content:space-between}}@media(max-width:560px){.home-hero{min-height:82svh}.cinematic-hero{object-position:69% center}.hero-caption>p{display:none}.hero-caption>div{gap:16px;align-items:flex-start;flex-direction:column}.hero-caption .button{padding:13px 16px}.hero-caption .text-link{font-size:11px}}

/* Estrutura definitiva das paginas de servico. */
.service-brand-row{position:relative;z-index:3;display:flex;align-items:center;min-height:92px;padding:14px 7vw 5px;background:linear-gradient(135deg,#0b0611 0%,#170729 55%,#220a3d 100%)}
.service-brand-row .service-hero-logo{width:174px;height:68px;margin:0}
.service-brand-row .service-hero-logo img{left:-18px;top:-49px;width:194px;height:194px}
.service-page main>.hero{padding-top:22px!important}
.service-page .hero-copy .breadcrumbs{margin:0 0 20px}
.service-page .hero-copy .kicker{margin:0 0 18px}
.service-page .hero-copy h1{margin-top:0}
.service-page .hero-art.service-visual{border-radius:2px}
.service-page .hero-art.service-visual::after{display:none!important}
.service-page .hero-art.service-visual img{opacity:1!important}
@media(max-width:900px){.service-brand-row{min-height:78px;padding:10px 6vw 2px}.service-brand-row .service-hero-logo{width:150px;height:58px}.service-brand-row .service-hero-logo img{left:-16px;top:-43px;width:168px;height:168px}.service-page main>.hero{padding-top:20px!important}}

/* Respiro, continuidade de cor e hierarquia das landing pages. */
.service-brand-row,.service-page main>.hero{background:#18072d!important}
.service-brand-row{min-height:116px;padding-top:18px;padding-bottom:22px;border-bottom:0}
.service-page main>.hero{padding-top:38px!important}
.service-page .hero-art.service-visual{background:#09040e}
.service-page .hero-art.service-visual img{animation:serviceVisualDrift 9s ease-in-out infinite alternate;transform:scale(1.035)}
.deliver-grid span{display:block;font:800 42px/1 'Manrope',sans-serif;letter-spacing:-.06em;color:#2ecc71}
.process b{display:block;font:800 30px/1 'Manrope',sans-serif;letter-spacing:-.05em;color:#e91e63}
.process h3{margin-top:28px}
@keyframes serviceVisualDrift{from{transform:scale(1.035) translate3d(-.6%,0,0)}to{transform:scale(1.075) translate3d(.8%,-.7%,0)}}
@media(max-width:900px){.service-brand-row{min-height:96px;padding-top:12px;padding-bottom:16px}.service-page main>.hero{padding-top:28px!important}.deliver-grid span{font-size:34px}.process b{font-size:25px}}
@media(prefers-reduced-motion:reduce){.service-page .hero-art.service-visual img{animation:none!important;transform:scale(1.035)}}

/* Hero de servico sem faixas e com uma leitura editorial mais limpa. */
.service-page .site-shell-header,.service-brand-row,.service-page main>.hero{background:#18072d!important;background-image:none!important}
.service-page main>.hero::before{display:none!important}
.service-brand-row{min-height:128px;padding-top:20px;padding-bottom:28px}
.service-page main>.hero{padding-top:42px!important}
.service-page .hero-copy .kicker{margin:0 0 13px;font-size:11px;color:#f4edf7}
.service-page .hero-copy .breadcrumbs{margin:0 0 30px;padding-left:17px;color:#9f90aa;font-size:11px;letter-spacing:.13em}
.service-page .hero-copy h1{margin-bottom:26px}
@media(max-width:900px){.service-brand-row{min-height:104px;padding-top:14px;padding-bottom:20px}.service-page main>.hero{padding-top:30px!important}.service-page .hero-copy .breadcrumbs{margin-bottom:24px}}

/* Service catalogue readability */
.service-card>span{font-size:10.5px;line-height:1.45}
.service-card p{font-size:15px;line-height:1.65}
.service-card b{font-size:12px;line-height:1.3;letter-spacing:.08em;white-space:nowrap}

@media(max-width:900px){
  .service-card{grid-template-columns:90px minmax(0,1fr) auto;column-gap:18px;row-gap:12px;padding:30px 0}
  .service-card>span{grid-column:1;grid-row:1 / span 2}
  .service-card h3{grid-column:2;grid-row:1;font-size:clamp(27px,4.4vw,36px)}
  .service-card p{display:block;grid-column:2 / 4;grid-row:2;margin:0;padding:0;font-size:14.5px;max-width:560px}
  .service-card b{grid-column:3;grid-row:1;text-align:right;font-size:11.5px}
}

@media(max-width:560px){
  .service-card{grid-template-columns:1fr;gap:10px;min-height:0;padding:26px 0}
  .service-card>span,.service-card h3,.service-card p,.service-card b{grid-column:1;grid-row:auto}
  .service-card>span{font-size:11px}
  .service-card h3{font-size:28px;line-height:1.08}
  .service-card p{display:block;font-size:15px;line-height:1.55;margin:2px 0 0}
  .service-card b{font-size:12px;text-align:left;margin-top:8px}
  .service-card b:after{content:none}
}

/* Final scale for the services catalogue */
.service-card{min-height:176px;padding-top:34px;padding-bottom:34px}
.service-card>span{font-size:12px;letter-spacing:.13em}
.service-card p{font-size:17px;line-height:1.6;color:#b9aebf}
.service-card b{font-size:14px;letter-spacing:.075em;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.72)}
.service-card.featured p,.service-card p{font-size:17px!important;line-height:1.6!important;color:#c3b8c9!important}
.service-card.featured b,.service-card b{font-size:14px!important;line-height:1.25!important;letter-spacing:.075em!important;padding:11px 0!important;border-bottom:1px solid rgba(255,255,255,.78)!important}

@media(max-width:900px){
  .service-card{min-height:0;padding:32px 0}
  .service-card.featured p,.service-card p{font-size:16px!important;line-height:1.6!important}
  .service-card.featured b,.service-card b{font-size:13px!important}
}

@media(max-width:560px){
  .service-card{padding:28px 0}
  .service-card>span{font-size:11px}
  .service-card h3{font-size:30px}
  .service-card.featured p,.service-card p{font-size:16px!important}
  .service-card.featured b,.service-card b{font-size:14px!important;width:max-content;padding:10px 0!important}
}

/* Portfólio real na Home */
.project-art.portfolio-real:before{display:none}
.project-art.portfolio-real img{position:relative;z-index:1;max-width:68%;max-height:58%;object-fit:contain;filter:drop-shadow(0 16px 34px rgba(0,0,0,.22));transition:transform .4s ease}
.project:hover .project-art.portfolio-real img{transform:scale(1.055)}
.portfolio-our,.portfolio-jeta,.portfolio-quiro{background:#fff;padding:0}
.portfolio-our img,.portfolio-jeta img,.portfolio-quiro img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;filter:none!important}
.portfolio-all{display:block;width:max-content;margin:34px 0 0 auto;color:var(--purple);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;border-bottom:2px solid var(--magenta);padding-bottom:8px}

/* Portfólio da Home: três provas reais com a mesma hierarquia visual. */
.portfolio .projects{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  border:0;
  align-items:stretch;
}
.portfolio .project,
.portfolio .project.large{
  grid-row:auto;
  min-width:0;
  display:flex;
  flex-direction:column;
  padding-bottom:32px;
  border:1px solid #d8d1dc;
  background:#fff;
  box-shadow:0 20px 54px rgba(41,12,67,.08);
  transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;
}
.portfolio .project:hover{
  transform:translateY(-8px);
  border-color:rgba(239,23,96,.45);
  box-shadow:0 30px 70px rgba(41,12,67,.15);
}
.portfolio .project-art,
.portfolio .large .project-art{
  width:100%;
  min-height:0;
  aspect-ratio:4/3;
  padding:clamp(28px,3vw,48px);
}
.portfolio .project-art.portfolio-real img{
  width:auto;
  height:auto;
  max-width:76%;
  max-height:64%;
}
.portfolio .portfolio-our img{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  transform:none;
  border-radius:0;
  box-shadow:none;
}
.portfolio .project:hover .portfolio-our img{transform:scale(1.04)}
.portfolio .portfolio-jeta img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important}
.portfolio .portfolio-quiro img{
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:contain;
}
.portfolio .project>small{
  margin-top:26px;
  min-height:32px;
  font-size:11px;
  line-height:1.45;
}
.portfolio .project>h3{
  margin-top:9px;
  margin-bottom:26px;
  font-size:clamp(22px,1.65vw,28px);
  line-height:1.16;
}
.portfolio .project>b{
  margin-top:auto;
  width:max-content;
  padding-bottom:7px;
  border-bottom:2px solid var(--magenta);
  font-size:11px;
}
@media(max-width:980px){
  .portfolio .projects{grid-template-columns:repeat(2,minmax(0,1fr))}
  .portfolio .project:first-child{grid-column:1/-1}
  .portfolio .project:first-child .project-art{aspect-ratio:2/1}
}
@media(max-width:650px){
  .portfolio .projects{grid-template-columns:1fr;gap:16px}
  .portfolio .project:first-child{grid-column:auto}
  .portfolio .project:first-child .project-art,
  .portfolio .project-art{aspect-ratio:4/3}
  .portfolio .project>small,.portfolio .project>h3,.portfolio .project>b{margin-left:22px;margin-right:22px}
}

/* Acabamento aprovado para as paginas internas de servico. */
.service-page:not(.service-page-branding) main{display:block;width:100%;max-width:none;margin:0;overflow:hidden;background:#18072d}
.service-page:not(.service-page-branding) main>.service-brand-row,
.service-page:not(.service-page-branding) main>.hero,
.service-page:not(.service-page-branding) main>.landing-intro,
.service-page:not(.service-page-branding) main>.deliver,
.service-page:not(.service-page-branding) main>.process,
.service-page:not(.service-page-branding) main>.landing-cta{width:100%;max-width:none;margin-left:0;margin-right:0;padding-left:7vw!important;padding-right:7vw!important;box-sizing:border-box}
.service-page:not(.service-page-branding) .service-brand-row{min-height:109px;padding-top:18px;padding-bottom:22px;background:#18072d!important}
.service-page:not(.service-page-branding) .service-brand-row .service-hero-logo{width:145px;height:69px;margin:0;overflow:hidden}
.service-page:not(.service-page-branding) .service-brand-row .service-hero-logo img{width:176px;height:176px;max-width:none;left:-17px;top:-48px}
.service-page:not(.service-page-branding) main>.hero{grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);gap:5vw;align-items:start;padding-top:34px!important;padding-bottom:76px!important;background:#18072d!important}
.service-page:not(.service-page-branding) .hero-copy{padding-top:0;max-width:700px}
.service-page:not(.service-page-branding) .hero-copy h1,
.service-page:not(.service-page-branding) .landing-intro h2,
.service-page:not(.service-page-branding) .deliver h2,
.service-page:not(.service-page-branding) .process h2,
.service-page:not(.service-page-branding) .landing-cta h2,
.service-page:not(.service-page-branding) .deliver h3,
.service-page:not(.service-page-branding) .process h3,
.service-page:not(.service-page-branding) .button{font-family:'Manrope',Arial,sans-serif!important}
.service-page:not(.service-page-branding) .hero-copy h1{font-size:clamp(3.5rem,4.8vw,5.8rem);line-height:.91;letter-spacing:-.055em}
.service-page:not(.service-page-branding) .hero-art.service-visual{width:100%;height:auto;aspect-ratio:1.08;margin:0;align-self:start}
.service-page:not(.service-page-branding) .landing-intro{background:#f5f3f6!important;color:#25074a!important}
.service-page:not(.service-page-branding) .deliver{background:#19072f!important;color:#fff!important}
.service-page:not(.service-page-branding) .process{background:#fff!important;color:#25074a!important}
@media(max-width:900px){
  .service-page:not(.service-page-branding) main>.service-brand-row,
  .service-page:not(.service-page-branding) main>.hero,
  .service-page:not(.service-page-branding) main>.landing-intro,
  .service-page:not(.service-page-branding) main>.deliver,
  .service-page:not(.service-page-branding) main>.process,
  .service-page:not(.service-page-branding) main>.landing-cta{padding-left:6vw!important;padding-right:6vw!important}
  .service-page:not(.service-page-branding) main>.hero{grid-template-columns:1fr;gap:30px;padding-top:26px!important}
  .service-page:not(.service-page-branding) .hero-art.service-visual{max-width:720px;aspect-ratio:1.08;margin-top:0}
}
@media(max-width:560px){
  .service-page:not(.service-page-branding) main>.service-brand-row,
  .service-page:not(.service-page-branding) main>.hero,
  .service-page:not(.service-page-branding) main>.landing-intro,
  .service-page:not(.service-page-branding) main>.deliver,
  .service-page:not(.service-page-branding) main>.process,
  .service-page:not(.service-page-branding) main>.landing-cta{padding-left:24px!important;padding-right:24px!important}
  .service-page:not(.service-page-branding) .hero-copy h1{font-size:clamp(3rem,13vw,4.3rem)}
  .service-page:not(.service-page-branding) .service-brand-row{min-height:96px;padding-top:14px;padding-bottom:13px}
}
.service-page img[src*="service-audiovisual-v2.png"]{content:url("assets/service-audiovisual-final.webp")}
.service-page img[src*="service-ai-automation-v1.png"]{content:url("assets/service-ai-automation-final.webp")}
.service-page img[src*="service-social-content-v2.png"]{content:url("assets/service-social-content-final.webp")}
.service-page img[src*="service-seo-local-v2.png"]{content:url("assets/service-seo-local-final.webp")}
.service-page img[src*="service-traffic-performance-v2.png"]{content:url("assets/service-traffic-performance-final.webp")}

/* Segunda imagem real em todas as paginas, no mesmo ritmo visual de Sites. */
.service-page:not(.service-page-branding) .landing-intro{grid-template-columns:minmax(0,1fr) minmax(320px,.92fr);gap:2rem 5vw;align-items:center}
.service-page:not(.service-page-branding) .landing-intro>.tag{grid-column:1/-1;margin:0}
.service-page:not(.service-page-branding) .landing-intro>div{grid-column:1;grid-row:2}
.service-page:not(.service-page-branding) .landing-intro::after{content:"";display:block;grid-column:2;grid-row:2;width:100%;min-height:430px;background-color:#12021f;background-position:center;background-size:cover;background-repeat:no-repeat;border:1px solid rgba(37,7,74,.14);box-shadow:18px 22px 0 rgba(240,20,104,.08),-12px -12px 0 rgba(44,224,130,.06);clip-path:polygon(0 0,94% 0,100% 7%,100% 100%,6% 100%,0 93%)}
.service-page-audiovisual .landing-intro::after{background-image:linear-gradient(145deg,rgba(8,2,13,.04),rgba(8,2,13,.18)),url("assets/service-audiovisual-final.webp")}
.service-page-ai .landing-intro::after{background-image:linear-gradient(145deg,rgba(8,2,13,.04),rgba(8,2,13,.18)),url("assets/service-ai-automation-final.webp")}
.service-page-social .landing-intro::after{background-image:linear-gradient(145deg,rgba(8,2,13,.04),rgba(8,2,13,.18)),url("assets/service-social-content-final.webp")}
.service-page-seo .landing-intro::after{background-image:linear-gradient(145deg,rgba(8,2,13,.04),rgba(8,2,13,.18)),url("assets/service-seo-local-final.webp")}
.service-page-traffic .landing-intro::after{background-image:linear-gradient(145deg,rgba(8,2,13,.04),rgba(8,2,13,.18)),url("assets/service-traffic-performance-final.webp")}
@media(max-width:1050px){
  .service-page:not(.service-page-branding) .landing-intro{grid-template-columns:1fr}
  .service-page:not(.service-page-branding) .landing-intro>.tag,
  .service-page:not(.service-page-branding) .landing-intro>div,
  .service-page:not(.service-page-branding) .landing-intro::after{grid-column:1;grid-row:auto}
  .service-page:not(.service-page-branding) .landing-intro::after{min-height:480px;margin-top:20px}
}
@media(max-width:680px){
  .service-page:not(.service-page-branding) .landing-intro{grid-template-columns:1fr;gap:24px}
  .service-page:not(.service-page-branding) .landing-intro::after{min-height:72vw;margin-top:6px}
}

:root{--shell-bg:#12051f;--shell-bg-2:#09040e;--shell-pink:#ef1760;--shell-green:#2ecc71}
html,body{margin:0}
.site-shell-header{min-height:86px;padding:0 5.5vw;display:grid;grid-template-columns:170px minmax(0,1fr) auto;align-items:center;gap:28px;border-bottom:1px solid rgba(255,255,255,.12);background:rgba(18,5,31,.94);backdrop-filter:blur(18px);color:#fff;position:sticky;top:0;z-index:100}
.site-shell-header a{color:inherit;text-decoration:none}.site-shell-brand{display:flex;align-items:center}.site-shell-brand img{display:block;width:152px;height:auto}.site-shell-nav{display:flex;align-items:center;justify-content:center;gap:clamp(13px,1.55vw,25px);font-size:11px;font-weight:750;white-space:nowrap}.site-shell-nav a{position:relative;padding:35px 0 32px}.site-shell-nav a:after{content:"";position:absolute;left:0;right:0;bottom:24px;height:2px;background:var(--shell-pink);transform:scaleX(0);transition:transform .2s ease}.site-shell-nav a:hover:after,.site-shell-nav a.active:after{transform:scaleX(1)}.site-shell-cta{padding:14px 20px;background:var(--shell-pink);font-size:12px;font-weight:800;white-space:nowrap}
.global-footer{padding:30px 5.5vw 18px;background:var(--shell-bg-2);color:#fff;display:grid;grid-template-columns:170px minmax(0,1fr) auto;align-items:center;gap:24px 36px;border-top:1px solid rgba(255,255,255,.1);font-family:'Inter',sans-serif}.global-footer a{color:inherit;text-decoration:none}.global-footer-brand img{display:block;width:130px;height:auto}.global-footer-nav,.global-footer-social{display:flex;align-items:center;gap:clamp(13px,1.7vw,26px);font-size:11px;font-weight:700;white-space:nowrap}.global-footer-nav{justify-content:center}.global-footer-social a{color:#d8cddd}.global-footer-social a:hover,.global-footer-nav a:hover{color:#fff}.global-footer-bottom{grid-column:1/-1;padding-top:16px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between;gap:20px;color:#96899e;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.global-footer-bottom a{color:#fff}
@media(max-width:1100px){.site-shell-header{grid-template-columns:145px minmax(0,1fr) auto;gap:18px}.site-shell-brand img{width:132px}.site-shell-nav{gap:13px;font-size:11px}.site-shell-cta{padding:12px 15px;font-size:11px}.global-footer{grid-template-columns:140px 1fr}.global-footer-social{grid-column:1/-1;justify-content:center}}
@media(max-width:900px){.site-shell-header{grid-template-columns:1fr auto;padding:12px 5vw 0;gap:10px 20px}.site-shell-brand img{width:128px}.site-shell-nav{display:flex;grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:22px;overflow-x:auto;padding:0 0 11px;scrollbar-width:none}.site-shell-nav::-webkit-scrollbar{display:none}.site-shell-nav a{padding:8px 0}.site-shell-nav a:after{bottom:1px}.global-footer{grid-template-columns:1fr;padding:26px 5vw 16px}.global-footer-brand img{width:120px}.global-footer-nav,.global-footer-social{grid-column:1;justify-content:flex-start;flex-wrap:wrap}.global-footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:520px){.site-shell-cta{padding:11px 12px}.site-shell-nav{font-size:11px}.global-footer-nav{gap:14px}.global-footer-social{gap:16px}}

/* Alinhamento óptico do arquivo de logo, que possui uma tela quadrada transparente */
.site-shell-brand{width:160px;height:56px;overflow:hidden;align-self:center}.site-shell-brand img{width:160px!important;max-width:none!important;transform:translate(-6.5%,-26.5%)}
.global-footer-brand{display:block;width:138px;height:49px;overflow:hidden}.global-footer-brand img{width:138px!important;max-width:none!important;transform:translate(-6.5%,-26.5%)}
.service-page .site-shell-header{background:linear-gradient(100deg,rgba(18,5,31,.98),rgba(72,8,78,.96) 58%,rgba(146,17,81,.92));box-shadow:0 10px 36px rgba(36,4,45,.24)}

/* Rodapé orientado a contato */
.global-footer-contact,.global-footer-social{display:flex;align-items:center;gap:clamp(13px,1.7vw,26px);font-size:11px;font-weight:700;white-space:nowrap}.global-footer-contact{justify-content:center}.global-footer-contact a,.global-footer-social a{color:#d8cddd}.global-footer-contact a:hover,.global-footer-social a:hover{color:#fff}

/* WhatsApp flutuante global */
.global-whatsapp{position:fixed;right:22px;bottom:22px;z-index:180;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;box-shadow:0 14px 36px rgba(0,0,0,.34);transition:transform .2s ease,box-shadow .2s ease}.global-whatsapp:hover,.global-whatsapp:active{transform:translateY(-3px) scale(1.04);box-shadow:0 18px 42px rgba(0,0,0,.4)}.global-whatsapp:before{content:"";width:31px;height:31px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='white' d='M16.04 3A12.86 12.86 0 0 0 5.2 22.8L3.5 29l6.36-1.67A12.9 12.9 0 1 0 16.04 3Zm0 23.6c-1.9 0-3.75-.5-5.38-1.44l-.38-.22-3.78.99 1.01-3.68-.25-.4a10.73 10.73 0 1 1 8.78 4.75Zm5.89-8.04c-.32-.16-1.9-.94-2.2-1.04-.29-.11-.5-.16-.72.16-.21.32-.82 1.04-1.01 1.26-.18.21-.37.24-.69.08-.32-.16-1.35-.5-2.57-1.59a9.64 9.64 0 0 1-1.78-2.21c-.19-.32-.02-.5.14-.66.15-.14.32-.37.48-.56.16-.18.21-.32.32-.53.11-.21.05-.4-.03-.56-.08-.16-.72-1.73-.98-2.37-.26-.62-.52-.54-.72-.55h-.61c-.21 0-.56.08-.85.4-.29.32-1.12 1.1-1.12 2.67s1.15 3.1 1.31 3.31c.16.21 2.26 3.45 5.47 4.84.77.33 1.36.53 1.83.68.77.24 1.46.21 2.01.13.62-.09 1.9-.78 2.17-1.53.27-.75.27-1.39.19-1.52-.08-.14-.29-.22-.61-.38Z'/%3E%3C/svg%3E")}

/* Consentimento e política */
.cookie-banner{position:fixed;left:24px;right:24px;bottom:22px;z-index:250;max-width:1120px;margin:auto;padding:20px 22px;background:rgba(9,4,14,.97);color:#fff;border:1px solid rgba(255,255,255,.15);box-shadow:0 24px 70px rgba(0,0,0,.48);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center}.cookie-banner[hidden]{display:none}.cookie-copy strong{display:block;margin-bottom:5px;font-size:15px}.cookie-copy p{margin:0;color:#cbbfd2;font-size:12px;line-height:1.55}.cookie-copy a{color:#fff;text-decoration:underline}.cookie-actions{display:flex;align-items:center;gap:9px}.cookie-actions button{border:1px solid rgba(255,255,255,.35);padding:11px 14px;background:transparent;color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}.cookie-actions .cookie-accept{border-color:var(--shell-pink);background:var(--shell-pink)}
.privacy-page{background:#f7f4f8;color:#201827;font-family:'Inter',sans-serif}.privacy-hero{position:relative;isolation:isolate;overflow:hidden;min-height:560px;padding-top:76px!important;padding-bottom:76px!important;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);grid-template-rows:auto auto auto;column-gap:clamp(48px,7vw,120px);align-content:center;background:radial-gradient(circle at 82% 44%,rgba(239,23,96,.22),transparent 24%),linear-gradient(135deg,#09040e,#2b0d4b);color:#fff}.privacy-hero>*{grid-column:1;position:relative;z-index:2}.privacy-hero small{color:#2ecc71;font-weight:800;text-transform:uppercase;letter-spacing:.15em}.privacy-hero h1{max-width:780px;margin:22px 0;font-size:clamp(52px,6.3vw,96px);line-height:.92;letter-spacing:-.065em}.privacy-hero p{max-width:660px;margin:0;color:#cbbfd2;font-size:17px;line-height:1.65}.privacy-hero:before{content:"";grid-column:2;grid-row:1/4;align-self:center;justify-self:center;width:min(36vw,470px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.22),transparent 9%),radial-gradient(circle at 48% 42%,#ef1760 0 8%,#8d176e 30%,#341458 58%,#0b0613 77%);border:1px solid rgba(255,255,255,.22);box-shadow:0 0 0 42px rgba(239,23,96,.08),0 0 0 84px rgba(46,204,113,.045),0 36px 100px rgba(0,0,0,.48),inset -30px -34px 55px rgba(0,0,0,.42);animation:privacy-orb-pulse 4.8s ease-in-out infinite;z-index:1}.privacy-hero:after{content:"DADOS  •  ESCOLHAS  •  TRANSPARÊNCIA";grid-column:2;grid-row:1/4;align-self:center;justify-self:center;width:min(29vw,380px);aspect-ratio:1;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:grid;place-items:center;color:#fff;font-size:11px;font-weight:800;letter-spacing:.18em;text-align:center;z-index:2}.privacy-content{width:min(1120px,calc(100% - (2 * var(--elevix-gutter))));max-width:none;margin:0 auto 0 var(--elevix-gutter);padding:75px 0 100px}.privacy-content h2{margin:55px 0 14px;color:#280b4c;font-size:clamp(28px,4vw,44px);letter-spacing:-.04em}.privacy-content p,.privacy-content li{line-height:1.75;color:#62596a}.privacy-content a{color:#9a1450;text-decoration:underline}.privacy-content .privacy-note{max-width:920px;padding:22px 24px;background:#fff;border-left:5px solid #2ecc71}@keyframes privacy-orb-pulse{0%,100%{transform:scale(.97);filter:saturate(.95)}50%{transform:scale(1.025);filter:saturate(1.18)}}
@media(max-width:900px){.privacy-hero{min-height:auto;display:block;padding-top:64px!important;padding-bottom:70px!important}.privacy-hero h1{max-width:760px;font-size:clamp(46px,12vw,74px)}.privacy-hero p{font-size:15px}.privacy-hero:before{display:block;width:min(76vw,380px);margin:58px auto 18px}.privacy-hero:after{position:absolute;left:50%;bottom:calc(70px + min(38vw,190px));width:min(61vw,305px);transform:translate(-50%,50%)}.privacy-content{width:calc(100% - (2 * var(--elevix-gutter)));margin:0 auto;padding-top:52px}}
@media(max-width:1050px) and (min-width:901px){.privacy-hero{grid-template-columns:minmax(0,1fr) 300px;column-gap:30px;min-height:520px}.privacy-hero h1{font-size:clamp(54px,6.7vw,72px)}.privacy-hero p{font-size:15px}.privacy-hero:before{width:300px}.privacy-hero:after{width:244px;font-size:11px}.privacy-content{width:min(900px,calc(100% - (2 * var(--elevix-gutter))))}}

/* Índice do Blog: capas reais formam a abertura editorial. */
.blog-hero{min-height:680px!important;padding-top:76px!important;padding-bottom:76px!important;display:grid!important;grid-template-columns:minmax(0,1.22fr) minmax(390px,.78fr);grid-template-rows:auto auto auto;column-gap:clamp(40px,4.5vw,78px);align-content:center!important;overflow:hidden}.blog-hero:after{right:3vw!important;top:12%!important;width:min(43vw,620px)!important;opacity:.55}.blog-hero>.eyebrow,.blog-hero>h1,.blog-hero>p{grid-column:1;position:relative;z-index:3}.blog-hero h1{max-width:780px!important;margin-bottom:32px!important;font-size:clamp(64px,6.25vw,96px)!important}.blog-hero>p:last-of-type{max-width:680px}.blog-hero-visual{grid-column:2;grid-row:1/4;align-self:center;position:relative;height:min(34vw,510px);min-height:430px;z-index:2;perspective:1200px}.blog-hero-card{position:absolute;margin:0;overflow:hidden;background:#11081a;border:1px solid rgba(255,255,255,.22);box-shadow:0 30px 70px rgba(0,0,0,.42);transform-origin:center;animation:blog-card-float 6s ease-in-out infinite}.blog-hero-card img{display:block;width:100%;height:100%;object-fit:cover}.blog-hero-card span{position:absolute;left:16px;bottom:14px;padding:8px 10px;background:rgba(9,4,14,.82);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;backdrop-filter:blur(8px)}@keyframes blog-card-float{0%,100%{translate:0 0}50%{translate:0 -10px}}

/* Redesenho simples e robusto: as 3 imagens tem o MESMO tamanho e um
   deslocamento moderado (nao espalhado ate a borda), entao um unico
   anel - centralizado no proprio container, em % do proprio container -
   sempre da conta de envolver as 3, em qualquer largura de tela, sem
   numero magico por breakpoint. */
/* A altura do container e travada em min(34vw,510px), mas a largura
   podia crescer sem limite em telas muito largas, esticando o container
   (e o circulo/cartoes proporcionais a ele) numa forma retangular em
   vez de quadrada - fazendo os cartoes vazarem do circulo. Trava a
   largura no mesmo valor da altura pra manter sempre quadrado. */
@media(min-width:901px){.blog-hero-visual{max-width:min(34vw,510px)!important}}
.blog-hero-card--one,.blog-hero-card--two,.blog-hero-card--three{width:56%!important;right:auto!important;bottom:auto!important}
.blog-hero-card--one{z-index:2;top:8%!important;left:19%!important;transform:rotate(3deg)}
.blog-hero-card--two{z-index:4;top:28%!important;left:14%!important;transform:rotate(-4deg);animation-delay:-2s}
.blog-hero-card--three{z-index:3;top:48%!important;left:19%!important;transform:rotate(4deg);animation-delay:-4s}

.blog-hero:after,.blog-hero:before{content:none!important;display:none!important}
.blog-hero-visual:after{
  content:'';
  position:absolute;
  top:50%;
  left:50%;
  width:130%;
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:1px solid rgba(46,204,113,.55);
  box-shadow:inset 0 0 90px rgba(46,204,113,.22),0 0 90px rgba(46,204,113,.32),0 0 140px rgba(46,204,113,.14);
  z-index:1;
  pointer-events:none;
}
.blog-hero-visual:before{
  content:'';
  position:absolute;
  top:50%;
  left:50%;
  width:130%;
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle 5px at 50% 0%,#d7ffe8 0%,#2ecc71 55%,transparent 72%);
  animation:blogNeonOrbit2 4.5s linear infinite;
  z-index:1;
  pointer-events:none;
}
@keyframes blogNeonOrbit2{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.blog-hero-visual:before{animation:none}}
@media(max-width:560px){
  .blog-hero-visual:after,.blog-hero-visual:before{width:98%!important;top:43%!important}
  .blog-hero-card--one,.blog-hero-card--two,.blog-hero-card--three{width:48%!important}
  .blog-hero-card--one{top:20%!important;left:26%!important}
  .blog-hero-card--two{top:36%!important;left:20%!important}
  .blog-hero-card--three{top:52%!important;left:25%!important}
}
@media(max-width:1100px) and (min-width:901px){.blog-hero{grid-template-columns:minmax(0,1fr) 350px;column-gap:34px;min-height:600px!important}.blog-hero h1{font-size:clamp(60px,7vw,78px)!important}.blog-hero-visual{height:390px;min-height:390px}}
@media(max-width:900px){.blog-hero{display:block!important;min-height:auto!important;padding-top:72px!important;padding-bottom:64px!important}.blog-hero h1{font-size:clamp(58px,13vw,92px)!important}.blog-hero-visual{height:min(92vw,480px);min-height:340px;margin:54px auto 0;max-width:640px}.blog-hero:after,.blog-hero:before{top:auto!important;right:-2.2vw!important;bottom:9.1%!important;width:92vw!important}.blog-hero-card--one{width:45%}.blog-hero-card--two{width:42%}.blog-hero-card--three{width:40%}}
@media(prefers-reduced-motion:reduce){.blog-hero-card{animation:none}}
.blog-hero:after{right:4vw!important;top:5%!important;opacity:.78!important;border-color:rgba(255,255,255,.24)!important;box-shadow:inset 0 0 110px rgba(239,23,96,.19),0 0 80px rgba(239,23,96,.15),0 0 130px rgba(46,204,113,.08)!important;animation:blog-orbit-glow 5.2s ease-in-out infinite}@keyframes blog-orbit-glow{0%,100%{filter:saturate(.9);opacity:.62}50%{filter:saturate(1.25);opacity:.9}}
@media(max-width:900px){.blog-hero:after{top:auto!important;right:-18vw!important;bottom:-4%!important}}
@media(prefers-reduced-motion:reduce){.blog-hero:after{animation:none}}

/* Refinamento visual do Blog: a orbita enquadra as capas e o texto de
   apresentacao passa a funcionar como um componente editorial. */
.blog-hero:after{
  top:19%!important;
  right:4.4vw!important;
  border-color: rgba(46,204,113,.55)!important;
  box-shadow: inset 0 0 90px rgba(46,204,113,.22), 0 0 90px rgba(46,204,113,.32), 0 0 140px rgba(46,204,113,.14)!important;
}
.blog-hero-visual{
  transform:translateY(22px);
}

/* Pontinho verde girando bem em cima da linha do circulo (mesma ideia
   da esfera da home) - mais preciso que um arco largo, nao "foge" do
   anel. Mesma posicao e tamanho do :after (o circulo base). */
.blog-hero:before {
  content: '';
  position: absolute;
  top: 19%;
  right: 4.4vw;
  width: min(43vw, 620px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle 5px at 50% 0%, #d7ffe8 0%, #2ecc71 55%, transparent 72%);
  animation: blogNeonOrbit 4.5s linear infinite;
  pointer-events: none;
  z-index: 1;
}
@keyframes blogNeonOrbit { to { transform: rotate(360deg); } }
@media(prefers-reduced-motion:reduce){ .blog-hero:before { animation: none; } }
.blog-list>header>p{
  position:relative;
  max-width:470px!important;
  margin:0!important;
  padding:8px 0 8px 30px!important;
  border-left:3px solid #ef1760;
  color:#493851!important;
  font-size:clamp(17px,1.15vw,19px)!important;
  font-weight:520!important;
  line-height:1.58!important;
  letter-spacing:-.015em;
}
.blog-list>header>p:before{
  content:"";
  position:absolute;
  left:-3px;
  top:8px;
  width:3px;
  height:34%;
  background:#2ecc71;
  box-shadow:0 0 18px rgba(46,204,113,.45);
}
@media(max-width:900px){
  .blog-hero-visual{transform:translateY(10px)}
  .blog-hero:after,.blog-hero:before{top:auto!important;bottom:4.8%!important}
  .blog-list>header>p{max-width:620px!important;margin-top:26px!important}
}
@media(max-width:900px){.site-shell-brand{width:134px;height:48px}.site-shell-brand img{width:134px!important}.global-footer-contact,.global-footer-social{grid-column:1;justify-content:flex-start;flex-wrap:wrap}.cookie-banner{grid-template-columns:1fr;left:12px;right:12px;bottom:12px}.cookie-actions{flex-wrap:wrap}.global-whatsapp{right:16px;bottom:16px}}

/* Páginas internas usam a mesma barra original da home; somente o logo fica à direita */
.site-shell-header{height:84px;min-height:84px;padding:0 5vw;display:flex;align-items:center;gap:0;background:rgba(24,7,45,.84);box-shadow:none;backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.12);position:sticky;top:0;z-index:100}.service-page .site-shell-header{background:rgba(24,7,45,.84);box-shadow:none}.site-shell-nav{display:flex;align-items:center;justify-content:flex-start;gap:clamp(16px,1.7vw,30px);font-size:12px;font-weight:650;letter-spacing:.045em;white-space:nowrap}.site-shell-nav a{padding:0;color:#d7cfdd}.site-shell-nav a:after{bottom:-13px}.site-shell-right{display:flex;align-items:center;gap:24px;margin-left:auto}.site-shell-cta{display:inline-flex;align-items:center;padding:12px 15px;background:var(--shell-pink);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}.site-shell-brand{width:138px;height:50px;overflow:hidden;flex:none}.site-shell-brand img{width:138px!important;max-width:none!important;transform:translate(-6.5%,-26.5%)}.site-shell-menu-toggle{display:none;background:none;border:0;padding:8px}.site-shell-menu-toggle i{display:block;width:25px;height:1px;background:#fff;margin:7px}
@media(max-width:1180px){.site-shell-nav{gap:15px;font-size:11px}.site-shell-right{gap:14px}.site-shell-brand{width:124px}.site-shell-brand img{width:124px!important}.site-shell-cta{padding:11px 12px}}
@media(max-width:900px){.site-shell-header{height:70px;min-height:70px;padding:0 5vw}.site-shell-nav{position:absolute;top:70px;left:0;right:0;display:none;flex-direction:column;align-items:flex-start;background:#19072f;padding:28px 6vw;margin:0;border-bottom:1px solid rgba(255,255,255,.12)}.site-shell-nav.open{display:flex}.site-shell-nav a{font-size:16px;font-weight:700}.site-shell-nav a:after{display:none}.site-shell-right{margin-left:auto}.site-shell-cta{display:none}.site-shell-brand{width:125px;height:46px}.site-shell-brand img{width:125px!important}.site-shell-menu-toggle{display:block}}

/* Composição editorial do rodapé */
.global-footer{position:relative;overflow:hidden;padding:42px 5.5vw 18px;grid-template-columns:1.15fr .9fr 1.15fr;align-items:start;gap:36px 54px;background:radial-gradient(circle at 8% 10%,rgba(142,23,118,.18),transparent 28%),radial-gradient(circle at 92% 80%,rgba(46,204,113,.08),transparent 24%),#09040e}.global-footer:before{content:"";position:absolute;left:5.5vw;right:5.5vw;top:0;height:1px;background:linear-gradient(90deg,#ef1760,rgba(255,255,255,.1),#2ecc71)}.global-footer-brand-block{min-width:0}.global-footer-brand-block p{max-width:280px;margin:16px 0 0;color:#9d91a5;font-size:12px;line-height:1.55}.global-footer-contact,.global-footer-social{min-height:96px;padding-left:32px;border-left:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:11px;white-space:normal}.global-footer-contact small,.global-footer-social small{margin-bottom:4px;color:#2ecc71;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.global-footer-contact a{font-size:13px}.global-footer-social>div{display:grid;grid-template-columns:1fr 1fr;gap:12px 26px}.global-footer-social a{font-size:11px}.global-footer-bottom{padding-top:17px;display:grid;grid-template-columns:1.2fr 1fr auto auto;align-items:center;justify-content:initial;gap:20px 34px}.global-footer-bottom span,.global-footer-bottom a{font-size:11px;white-space:nowrap}.global-footer-bottom a:last-child{text-align:right}
@media(max-width:900px){.global-footer{grid-template-columns:1fr 1fr;padding-top:34px}.global-footer-brand-block{grid-column:1/-1}.global-footer-contact,.global-footer-social{grid-column:auto;padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.1);padding-top:22px}.global-footer-bottom{grid-template-columns:1fr 1fr;align-items:start}.global-footer-bottom a:last-child{text-align:left}}
@media(max-width:560px){.global-footer{grid-template-columns:1fr;gap:28px}.global-footer-brand-block,.global-footer-contact,.global-footer-social{grid-column:1}.global-footer-bottom{grid-template-columns:1fr;gap:9px}.global-footer-social>div{grid-template-columns:1fr 1fr}}

/* Eixo único do site: menu e conteúdo começam no mesmo ponto da home */
.site-shell-header{padding-left:5vw;padding-right:5vw}.site-shell-nav a:after{display:none!important}.inner-hero,.inner-main,.blog-list,.article-hero,.related,.bottom-cta,.privacy-hero{padding-left:5vw!important;padding-right:5vw!important}.service-page main>.hero,.service-page .section,.service-page .landing-cta{padding-left:5vw!important;padding-right:5vw!important}

/* Recorte exato do logo no canto direito, baseado na área visível do PNG */
.site-shell-brand{position:relative;width:120px!important;height:66px!important;overflow:hidden!important;flex:none}.site-shell-brand img{position:absolute!important;left:-14px!important;top:-40px!important;width:146px!important;height:146px!important;max-width:none!important;transform:none!important}.global-footer-brand{position:relative;width:122px!important;height:68px!important;overflow:hidden!important}.global-footer-brand img{position:absolute!important;left:-15px!important;top:-41px!important;width:148px!important;height:148px!important;max-width:none!important;transform:none!important}
@media(max-width:1180px){.site-shell-brand{width:112px!important;height:62px!important}.site-shell-brand img{left:-13px!important;top:-37px!important;width:136px!important;height:136px!important}}
@media(max-width:900px){.site-shell-brand{width:108px!important;height:60px!important}.site-shell-brand img{left:-13px!important;top:-36px!important;width:132px!important;height:132px!important}}

/* Cor fixa para não variar sobre fundos diferentes */
.site-shell-header,.service-page .site-shell-header{background:#18072d!important;box-shadow:none!important}

@media(max-width:560px){.site-shell-nav{background:#18072d!important}}
@media (max-width:900px) and (min-width:561px) {
  .site-shell-nav {
    display: flex !important;
    position: static !important;
    flex-direction: row !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    transform: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    z-index: auto !important;
  }
  .site-shell-nav::before { display: none !important; }
  .site-shell-nav a {
    display: inline !important;
    padding: 0 !important;
    border-bottom: 0 !important;
    font-size: 12px !important;
    font-weight: 650 !important;
  }
  .site-shell-menu-toggle { display: none !important; }
  .site-shell-cta { display: inline-flex !important; }
  body.menu-locked::after { display: none !important; }
}

/* Mesma grade lateral da home em todas as paginas internas. */
@media (min-width:901px){
  .site-shell-header,
  .global-footer{padding-left:7vw!important;padding-right:7vw!important}
  .global-footer:before{left:7vw!important;right:7vw!important}
  .inner-hero,
  .inner-main,
  .blog-list,
  .article-hero,
  .related,
  .bottom-cta,
  .privacy-hero,
  .service-page main>.hero,
  .service-page .section,
  .service-page .landing-cta{padding-left:7vw!important;padding-right:7vw!important}
}
@media (max-width:900px){
  .site-shell-header,
  .global-footer{padding-left:6vw!important;padding-right:6vw!important}
}

/* Pulso padronizado do WhatsApp em todas as paginas. */
.global-whatsapp{animation:elevixWhatsappPulse 1.9s ease-in-out infinite}
.global-whatsapp:after{content:"";position:absolute;inset:-7px;border:2px solid rgba(37,211,102,.52);border-radius:50%;animation:elevixWhatsappRing 1.9s ease-out infinite;pointer-events:none}
@keyframes elevixWhatsappPulse{0%,100%{transform:scale(1);box-shadow:0 14px 36px rgba(0,0,0,.34),0 0 0 0 rgba(37,211,102,.35)}50%{transform:scale(1.08);box-shadow:0 18px 44px rgba(0,0,0,.4),0 0 26px 7px rgba(37,211,102,.22)}}
@keyframes elevixWhatsappRing{0%{opacity:.75;transform:scale(.82)}70%,100%{opacity:0;transform:scale(1.28)}}
@media(prefers-reduced-motion:reduce){.global-whatsapp,.global-whatsapp:after{animation:none!important}}

/* Grade final: menu, conteudo e rodape compartilham exatamente o mesmo eixo. */
:root{--elevix-gutter:7vw}
.site-shell-header{padding-left:var(--elevix-gutter)!important;padding-right:var(--elevix-gutter)!important}
.site-shell-nav{font-size:13px!important;font-weight:700!important;gap:clamp(20px,1.75vw,31px)!important}
.site-shell-nav a{line-height:1.15!important}
.inner-hero,.inner-main,.blog-list,.article-hero,.article-body,.related,.bottom-cta,.privacy-hero,
.service-page main>.hero,.service-page .section,.service-page .landing-cta,
.global-footer{padding-left:var(--elevix-gutter)!important;padding-right:var(--elevix-gutter)!important}
.global-footer:before{left:var(--elevix-gutter)!important;right:var(--elevix-gutter)!important}
@media(max-width:1180px) and (min-width:901px){.site-shell-nav{font-size:12px!important;gap:15px!important}}
@media(max-width:900px){
  :root{--elevix-gutter:6vw}
}
@media(max-width:560px){
  .site-shell-nav{font-size:16px!important;gap:12px!important}
}

/* Em paginas internas, cada secao obedece a mesma borda de conteudo. */
body:not(.home-page):not(.service-page) main>section{padding-left:var(--elevix-gutter)!important;padding-right:var(--elevix-gutter)!important}

/* Rodape global: tres colunas iguais no mesmo eixo do restante do site. */
@media(min-width:901px){
  .global-footer{padding-left:9vw!important;padding-right:9vw!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:0!important;row-gap:34px!important;align-items:start!important}
  .global-footer:before{left:9vw!important;right:9vw!important}
  .global-footer-brand-block{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;justify-self:start!important;width:min(100%,380px)!important;min-width:0!important;padding:0!important}
  .global-footer-brand{width:145px!important;flex:0 0 145px!important}
  .global-footer-brand-block p{margin:0 0 0 32px!important;max-width:210px!important;text-transform:uppercase!important;letter-spacing:.0825em!important}
  .global-footer-contact,.global-footer-social{width:max-content!important;max-width:100%!important;min-width:230px!important;padding-left:32px!important;padding-right:0!important;border-left:1px solid rgba(255,255,255,.1)!important;align-items:flex-start!important}
  .global-footer-contact{justify-self:center!important}
  .global-footer-social{justify-self:end!important}
  .global-footer-contact small,.global-footer-social small,
  .global-footer-contact a,.global-footer-social a{font-size:12px!important;line-height:1.35!important;font-weight:700!important}
  .global-footer-contact a,.global-footer-social a{text-transform:uppercase!important;letter-spacing:.1em!important}
  .global-footer-bottom{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:0!important;width:100%!important}
  .global-footer-bottom>*{grid-column:auto!important;grid-row:auto!important;justify-self:auto!important;text-align:left!important}
  .global-footer-bottom>*:last-child{text-align:right!important}
  .global-footer>.global-footer-brand-block,
  .global-footer>.global-footer-contact,
  .global-footer>.global-footer-social{transform:none!important}
  .global-footer>.global-footer-contact{transform:translateX(38px)!important}
  .global-footer>.global-footer-bottom{transform:none!important}
}

/* O pulso fica nas paginas internas; na home o botao permanece estavel. */
.home-page .global-whatsapp{animation:elevixWhatsappPulse 1.9s ease-in-out infinite!important}
.home-page .global-whatsapp:after{animation:elevixWhatsappRing 1.9s ease-out infinite!important}

/* Branding aprovado: mantem a composicao especial sem alterar as outras paginas. */
.service-page-branding{
  --branding-gutter:var(--elevix-gutter,7vw);
  background:#18072d;
  font-family:'Inter',sans-serif;
}
.service-page-branding main{display:block;width:100%;max-width:none;margin:0;overflow:hidden;background:#18072d}
.service-page-branding main>.service-brand-row,
.service-page-branding main>section{width:100%;max-width:none;margin-left:0;margin-right:0;box-sizing:border-box}
.service-page-branding main>.service-brand-row,
.service-page-branding main>.hero,
.service-page-branding main>.landing-intro,
.service-page-branding main>.deliver,
.service-page-branding main>.process,
.service-page-branding main>.landing-cta{padding-left:var(--branding-gutter)!important;padding-right:var(--branding-gutter)!important}
.service-page-branding .service-brand-row,
.service-page-branding main>.hero{background:#18072d!important}
.service-page-branding main>.hero{grid-template-columns:minmax(0,1fr) minmax(420px,.95fr);gap:clamp(36px,5vw,84px);align-items:center}
.service-page-branding main>.landing-intro{background:var(--paper,#f4eff7)!important;color:var(--ink,#120b18)!important}
.service-page-branding main>.deliver{background:#19072f!important;color:#fff!important}
.service-page-branding main>.process{background:#fff!important;color:var(--ink,#120b18)!important}
.service-page-branding main>.landing-cta{background:var(--magenta,#f11962)!important}
.service-page-branding .landing-intro,
.service-page-branding .deliver,
.service-page-branding .process{padding-top:clamp(88px,8vw,118px)!important;padding-bottom:clamp(88px,8vw,118px)!important}
.service-page-branding .landing-cta{padding-top:clamp(82px,7vw,100px)!important;padding-bottom:clamp(82px,7vw,100px)!important}
.service-page-branding h1,
.service-page-branding h2,
.service-page-branding h3,
.service-page-branding .button{font-family:'Manrope',sans-serif!important}
.service-page-branding p,
.service-page-branding li,
.service-page-branding a,
.service-page-branding .tag{font-family:'Inter',sans-serif}
.service-page-branding .landing-intro>*,
.service-page-branding .deliver>*,
.service-page-branding .process>*{min-width:0}
.service-page-branding .deliver-grid,
.service-page-branding .process ol{width:100%;max-width:100%;margin-left:0;margin-right:0;box-sizing:border-box}
@media(max-width:900px){
  .service-page-branding{--branding-gutter:6vw}
  .service-page-branding main>.hero{grid-template-columns:1fr;gap:34px}
}
@media(max-width:560px){
  .service-page-branding{--branding-gutter:24px}
  .service-page-branding .landing-intro,
  .service-page-branding .deliver,
  .service-page-branding .process{padding-top:72px!important;padding-bottom:72px!important}
}

/* Luz/brilho no hover dos botoes e links clicaveis, em vez de setas. */
.site-shell-cta{transition:transform .2s ease,box-shadow .2s ease}
.site-shell-cta:hover,.site-shell-cta:active{transform:translateY(-2px);box-shadow:0 8px 26px rgba(239,23,96,.4),0 0 24px 4px rgba(239,23,96,.5)}
.global-footer-contact a,.global-footer-social a,.global-footer-bottom a{transition:color .2s ease,text-shadow .2s ease}
.global-footer-contact a:hover,.global-footer-social a:hover,.global-footer-bottom a:hover{color:#fff;text-shadow:0 0 14px rgba(239,23,96,.85),0 0 26px rgba(239,23,96,.5)}

/* Gaveta lateral do menu, so no mobile de verdade (<=560px), igual a home:
   desliza da direita, estreita, fundo escurece em vez de cobrir tudo. */
@media (max-width: 560px) {
  .site-shell-nav {
    display: flex !important;
    flex-direction: column !important;
    position: fixed !important;
    top: 68px !important;
    right: 16px !important;
    left: auto !important;
    bottom: auto !important;
    width: min(66vw, 250px) !important;
    height: auto !important;
    max-height: calc(100dvh - 90px) !important;
    overflow-y: auto !important;
    padding: 18px 22px 22px !important;
    margin: 0 !important;
    background: linear-gradient(165deg, #34125f 0%, #23093f 55%, #17062c 100%) !important;
    border-bottom: 0 !important;
    box-shadow: 0 20px 50px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.1) !important;
    border-radius: 10px !important;
    overflow-x: hidden !important;
    transform: translateY(-16px) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: transform .28s ease, opacity .28s ease !important;
    z-index: 150 !important;
  }
  .site-shell-nav.open {
    transform: translateY(0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
  .site-shell-nav a {
    padding: 10px 0 !important;
  }
  body.menu-locked {
    overflow-x: hidden !important;
  }
  body.menu-locked::after {
    content: "" !important;
    position: fixed !important;
    inset: 0 !important;
    background: rgba(7,3,13,.82) !important;
    backdrop-filter: blur(6px) !important;
    z-index: 140 !important;
  }
}

/* O selo circular "DADOS/ESCOLHAS/TRANSPARENCIA" usa bottom:calc()
   relativo a secao inteira, que varia de altura conforme o texto -
   no mobile isso fazia o selo cair em cima do titulo. Mais seguro
   esconder esse elemento so decorativo no mobile/tablet. */
@media (max-width: 900px) {
  .privacy-hero:after {
    display: none !important;
  }
}

/* Mesmo visual bonito da gaveta do menu nas paginas internas, so no mobile. */
@media (max-width: 560px) {
  .site-shell-nav::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #ef1760, #8b1bb4, #ef1760);
  }
  .site-shell-nav a {
    display: block;
    padding: 12px 4px !important;
    border-bottom: 1px solid rgba(255,255,255,.1);
    transition: color .2s ease, text-shadow .2s ease, padding-left .2s ease;
  }
  .site-shell-nav a:last-child {
    border-bottom: 0;
  }
  .site-shell-nav a:hover,
  .site-shell-nav a:active {
    color: #ff5b93 !important;
    padding-left: 12px !important;
    text-shadow: 0 0 18px rgba(239,23,96,.65);
  }
}

/* O header (.site-shell-header) tem z-index:100, e o fundo escurecido
   atras do menu aberto (body.menu-locked::after) tem z-index:140 - isso
   fazia o fundo cobrir o proprio header (logo, botao de hamburguer),
   deixando tudo "apagado"/transparente e impossivel de clicar. Mesmo
   bug ja corrigido no .topbar da home; faltava aqui. */
.site-shell-header {
  z-index: 200 !important;
}

/* Banner do Blog — composição editorial final.
   Mantém as três capas dentro de um aro compacto e com leitura forte. */
.blog-hero .blog-hero-visual{
  width:min(29vw,420px)!important;
  max-width:420px!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:1!important;
  justify-self:center!important;
  transform:none!important;
  isolation:isolate;
  overflow:hidden!important;
  border-radius:50%;
  background:radial-gradient(circle at 42% 32%,rgba(255,255,255,.10),transparent 18%),radial-gradient(circle at 48% 45%,rgba(239,23,96,.30),rgba(57,12,83,.72) 54%,rgba(9,4,14,.98) 100%);
  border:1px solid rgba(239,23,96,.34);
  box-shadow:inset -26px -30px 48px rgba(0,0,0,.30),0 28px 80px rgba(0,0,0,.42),0 0 70px rgba(239,23,96,.22);
}
.blog-hero .blog-hero-visual::after{
  top:50%!important;
  left:50%!important;
  width:84%!important;
  transform:translate(-50%,-50%)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:transparent!important;
  box-shadow:inset 0 0 64px rgba(239,23,96,.10),0 0 0 1px rgba(46,204,113,.12)!important;
}
.blog-hero .blog-hero-visual::before{
  top:50%!important;
  left:50%!important;
  width:100%!important;
  transform:translate(-50%,-50%) rotate(0deg)!important;
  background:conic-gradient(from 0deg,transparent 0 68%,rgba(239,23,96,.08) 75%,#ef1760 86%,#fff 89%,#2ecc71 91%,transparent 96% 100%)!important;
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px));
  mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px));
  animation:blog-cover-orbit 8s linear infinite!important;
  z-index:2!important;
  filter:drop-shadow(0 0 9px rgba(239,23,96,.82));
}
@keyframes blog-cover-orbit{to{transform:translate(-50%,-50%) rotate(360deg)}}
.blog-hero .blog-hero-card{
  width:76%!important;
  left:12%!important;
  right:auto!important;
  bottom:auto!important;
  aspect-ratio:16/9;
  border-color:rgba(255,255,255,.32)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.62),0 0 0 1px rgba(239,23,96,.12)!important;
  z-index:3;
}
.blog-hero .blog-hero-card--one{width:52%!important;top:8%!important;left:24%!important;transform:rotate(-4deg)!important;z-index:3;opacity:.88}
.blog-hero .blog-hero-card--two{width:78%!important;top:31%!important;left:11%!important;transform:rotate(0deg)!important;z-index:5}
.blog-hero .blog-hero-card--three{width:52%!important;top:66%!important;left:24%!important;transform:rotate(4deg)!important;z-index:4;opacity:.90}
.blog-hero .blog-hero-card span{left:12px;bottom:10px;padding:7px 9px;font-size:11px;background:rgba(9,4,14,.88)}
@media (max-width:1100px) and (min-width:901px){
  .blog-hero .blog-hero-visual{width:340px!important;max-width:340px!important}
}
@media (max-width:900px){
  .blog-hero .blog-hero-visual{width:min(72vw,390px)!important;max-width:390px!important;margin:42px auto 0!important}
}
@media (max-width:560px){
  .blog-hero .blog-hero-visual{width:min(84vw,340px)!important;margin-top:34px!important}
  .blog-hero .blog-hero-card--one{top:8%!important;left:24%!important}
  .blog-hero .blog-hero-card--two{top:31%!important;left:11%!important}
  .blog-hero .blog-hero-card--three{top:66%!important;left:24%!important}
}
@media (prefers-reduced-motion:reduce){
  .blog-hero .blog-hero-visual::before,.blog-hero .blog-hero-card{animation:none!important}
}

/* Acessibilidade e controle permanente de privacidade. */
.cookie-preferences{border:0;padding:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}
.global-footer>.cookie-preferences{grid-column:1/-1;justify-self:start;margin-top:-22px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;text-align:left;text-transform:uppercase}
@media(max-width:900px){.global-footer>.cookie-preferences{grid-column:1;margin-top:-10px}}
.cookie-preferences:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2ecc71;outline-offset:4px}

/* Marca permanece visivel na barra fixa sem alterar a composicao dos banners. */
.site-shell-right .site-shell-brand{width:108px;height:38px;margin-right:4px}.site-shell-right .site-shell-brand img{width:108px!important}
.topbar .site-shell-brand{width:96px;height:34px;margin-left:auto;margin-right:18px}.topbar .site-shell-brand img{width:96px!important;max-width:none!important;transform:translate(-6.5%,-26.5%)}
@media(max-width:900px){.site-shell-right .site-shell-brand{width:102px;height:36px}.site-shell-right .site-shell-brand img{width:102px!important}.topbar .site-shell-brand{width:92px;height:33px;margin-left:auto;margin-right:10px}.topbar .site-shell-brand img{width:92px!important}.eyebrow,.tag,.breadcrumbs,.card-meta,.global-footer-bottom,.hero-caption{font-size:11px!important}}

/* Recorte final da marca no menu: somente ELEVIX, sem a assinatura inferior. */
.site-shell-right .site-shell-brand,.topbar .site-shell-brand{position:relative!important;width:99px!important;height:37px!important;overflow:hidden!important;flex:none}
.site-shell-right .site-shell-brand img,.topbar .site-shell-brand img{position:absolute!important;left:-10px!important;top:-31px!important;width:108px!important;height:108px!important;max-width:none!important;transform:none!important}
.site-shell-right{gap:18px!important}.topbar .site-shell-brand{margin-left:auto!important;margin-right:18px!important}
@media(max-width:900px){.site-shell-right .site-shell-brand,.topbar .site-shell-brand{width:99px!important;height:37px!important}.site-shell-right .site-shell-brand img,.topbar .site-shell-brand img{left:-10px!important;top:-31px!important;width:108px!important;height:108px!important}}

/* A Home usa a mesma proximidade entre marca, CTA e menu movel das paginas internas. */
@media(min-width:901px){.home-page .topbar .button.small{margin-left:0!important}}
@media(max-width:900px){.home-page .topbar .menu-toggle{margin-left:18px!important}}

/* No tablet, o menu horizontal continua visível sem colidir com a marca. */
@media (max-width:900px) and (min-width:561px){.home-page .topbar .button.small{display:none!important}.home-page .topbar .site-shell-brand{margin-right:0!important}}
@media (max-width:700px) and (min-width:561px){.home-page .topbar nav{gap:10px!important}.home-page .topbar nav a{font-size:11px!important;letter-spacing:0!important}.home-page .topbar{padding-left:4vw!important;padding-right:4vw!important}}

/* Banner editorial do Blog — versão reconstruída, sem alterar a redação. */
@media (min-width:901px){
  .blog-hero{
    grid-template-columns:minmax(0,1.08fr) minmax(470px,.92fr)!important;
    column-gap:clamp(42px,5vw,82px)!important;
  }
}
.blog-hero .blog-hero-visual{
  width:min(39vw,590px)!important;
  max-width:590px!important;
  aspect-ratio:1.16!important;
  overflow:hidden!important;
  border-radius:0!important;
  border:1px solid rgba(255,255,255,.18)!important;
  clip-path:polygon(7% 0,100% 0,100% 92%,93% 100%,0 100%,0 8%);
  background:radial-gradient(circle at 68% 35%,rgba(239,23,96,.28),transparent 36%),linear-gradient(145deg,#10061b 0%,#2a0a48 54%,#09040e 100%)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.44),inset 0 0 80px rgba(239,23,96,.08)!important;
}
.blog-hero .blog-hero-visual::after{
  content:""!important;
  position:absolute!important;
  inset:-18% 15% -18% auto!important;
  width:24%!important;
  height:136%!important;
  aspect-ratio:auto!important;
  transform:skewX(-17deg)!important;
  border:0!important;
  border-left:1px solid rgba(239,23,96,.40)!important;
  border-right:1px solid rgba(255,255,255,.10)!important;
  border-radius:0!important;
  background:linear-gradient(180deg,rgba(239,23,96,.02),rgba(239,23,96,.30) 45%,rgba(126,32,166,.10))!important;
  background-size:auto!important;
  box-shadow:18px 0 46px rgba(239,23,96,.13)!important;
  opacity:.78;
  z-index:1!important;
}
.blog-hero .blog-hero-visual::before{
  content:""!important;
  position:absolute!important;
  top:-30%!important;
  left:-45%!important;
  width:38%!important;
  height:165%!important;
  aspect-ratio:auto!important;
  border-radius:0!important;
  transform:rotate(18deg)!important;
  background:linear-gradient(90deg,transparent,rgba(239,23,96,.28),rgba(255,255,255,.16),transparent)!important;
  -webkit-mask:none!important;
  mask:none!important;
  filter:blur(4px)!important;
  animation:blog-editorial-sweep 8s ease-in-out infinite!important;
  z-index:2!important;
}
@keyframes blog-editorial-sweep{
  0%,18%{left:-45%;opacity:0}
  30%{opacity:.75}
  62%{left:115%;opacity:.35}
  63%,100%{left:115%;opacity:0}
}
.blog-hero .blog-hero-card{
  aspect-ratio:16/9!important;
  opacity:1!important;
  border:1px solid rgba(255,255,255,.30)!important;
  border-radius:0!important;
  box-shadow:0 22px 52px rgba(0,0,0,.58)!important;
  animation:blog-card-breathe 7s ease-in-out infinite!important;
}
@keyframes blog-card-breathe{
  0%,100%{translate:0 0}
  50%{translate:0 -5px}
}
.blog-hero .blog-hero-card--one{
  width:54%!important;
  top:5%!important;
  left:8%!important;
  transform:rotate(-2deg)!important;
  z-index:3!important;
}
.blog-hero .blog-hero-card--two{
  width:70%!important;
  top:25%!important;
  left:15%!important;
  transform:none!important;
  z-index:6!important;
}
.blog-hero .blog-hero-card--three{
  width:54%!important;
  top:57%!important;
  left:38%!important;
  transform:rotate(2deg)!important;
  z-index:4!important;
}
.blog-hero .blog-hero-card--one{animation-delay:-1.5s!important}
.blog-hero .blog-hero-card--two{animation-delay:-4s!important}
.blog-hero .blog-hero-card--three{animation-delay:-2.5s!important}
.blog-hero .blog-hero-card span{
  left:14px!important;
  bottom:12px!important;
  padding:8px 10px!important;
  font-size:11px!important;
  border-left:2px solid #2ecc71!important;
  background:rgba(9,4,14,.90)!important;
}
@media (max-width:1100px) and (min-width:901px){
  .blog-hero{grid-template-columns:minmax(0,1fr) 400px!important}
  .blog-hero .blog-hero-visual{width:400px!important;max-width:400px!important}
}
@media (max-width:900px){
  .blog-hero .blog-hero-visual{
    width:min(88vw,590px)!important;
    max-width:590px!important;
    margin:44px auto 0!important;
  }
}
@media (max-width:560px){
  .blog-hero .blog-hero-visual{
    width:100%!important;
    max-width:420px!important;
    margin-top:34px!important;
    aspect-ratio:1.02!important;
  }
  .blog-hero .blog-hero-card--one{width:54%!important;top:5%!important;left:8%!important}
  .blog-hero .blog-hero-card--two{width:76%!important;top:27%!important;left:12%!important}
  .blog-hero .blog-hero-card--three{width:54%!important;top:59%!important;left:38%!important}
}
@media (prefers-reduced-motion:reduce){
  .blog-hero .blog-hero-visual::before,.blog-hero .blog-hero-card{animation:none!important}
}
