/* =========================================================================
   UIVE — Assessoria Audiovisual
   Réplica fiel da página em WordPress/Elementor, reescrita em CSS puro.
   Medidas, cores e fontes copiadas do original. Pontos de quebra iguais aos
   do Elementor: 1366 (laptop), 1200 (tablet grande), 880, 767 (celular).
   ========================================================================= */
@property --ang { syntax: "<angle>"; inherits: true; initial-value: 0deg; }

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  margin: 0; background: #000; color: #334155;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px; line-height: 1.65; overflow-x: hidden;
}
img { max-width: 100%; height: auto; display: block; }
h1, h2, h3, p { margin: 0; font-weight: 400; }
ul { margin: 0; padding: 0; list-style: none; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; }
.contorno { font-family: "Bruno Ace", sans-serif; color: #000; -webkit-text-stroke: 1px #fff; line-height: 1.3; }

/* ---------- botão com borda animada (btn-home-principal) ---------- */
.btn-borda {
  position: relative; display: inline-flex; width: max-content; padding: 2px; border-radius: 500px;
  font-size: 20px; background: transparent; transition: background .2s;
}
.btn-borda::before {
  content: ""; position: absolute; inset: 0; padding: 2px; border-radius: 500px;
  background: conic-gradient(from var(--ang), #fff 10%, transparent 30%, transparent 70%, #fff 90%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  animation: girar 4s linear infinite;
}
.btn-borda span { position: relative; z-index: 1; padding: 1em 1.5em; border-radius: 500px; color: #fff; font-size: 20px; line-height: 1; }
.btn-borda:hover { background: linear-gradient(90deg, #fff 0%, #999 100%); }
.btn-borda:hover span { color: #000; }
@keyframes girar { to { --ang: 360deg; } }

/* ---------- HERO ---------- */
.hero { position: relative; min-height: 968px; padding-top: 10px; display: flex; flex-direction: column; align-items: center; overflow: hidden; }
.hero__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: right center; z-index: 0; }
.hero > *:not(.hero__bg) { position: relative; z-index: 1; }
.hero__topo { width: 100%; margin-top: 15px; padding: 0 18px 0 30px; display: flex; justify-content: space-between; align-items: center; }
.hero__logo img { width: 113px; }
.hero__menu { display: flex; gap: 26px; }
.hero__menu a, .menu a.menu__link { display: inline-flex; align-items: center; gap: 8px; font-family: "Bruno Ace", sans-serif; font-size: 1.2rem; }
.hero__menu a span, .menu__link span { background: linear-gradient(90deg, #fff 0%, #999 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: #54595f; }
.hero__menu img { width: 14px; }
.hero__hamburger { display: none; background: none; border: 0; padding: 0; color: #eee; margin-bottom: -16px; }
.hero__centro { width: 100%; max-width: 1280px; margin-top: 103px; padding: 10px; display: flex; flex-direction: column; align-items: center; gap: 20px; }
.hero__icone { width: 71px; opacity: .58; }
.hero__titulo-anim {
  font-family: "Bruno Ace", sans-serif; font-size: 50px; font-weight: 300; text-align: center;
  white-space: pre-wrap; display: inline-block; overflow: hidden; line-height: 82.5px;
}
.hero__titulo-anim span { opacity: 0; transform: translateY(10px); color: #6d6d6d; display: inline-block; white-space: pre; line-height: 60px; animation: letraEntra 1s ease forwards; transition: color .6s; }
.hero__titulo-anim.terminou span { color: #fff; }
.hero__titulo-anim.terminou { animation: pulso 1s ease-in-out 1; }
.hero__titulo-estatico { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; font-family: "Bruno Ace", sans-serif; font-size: 30px; line-height: 39px; color: #e9e9e9; text-align: center; }
.hero__sub { font-family: "Bruno Ace", sans-serif; font-size: 25px; line-height: 56px; color: #fff; opacity: .4; margin: -22px 0 -10px; text-align: center; }
.hero__centro .btn-borda { margin-top: 25px; }
.hero__seta { margin-top: 191px; animation: sobeDesce 1s infinite; }
.entra { animation: sobeEntra 1.25s ease 1.5s both; }
.hero__sub.entra { animation-name: sobeEntraSub; }
@keyframes letraEntra { to { opacity: 1; transform: translateY(0); } }
@keyframes pulso { 50% { transform: scale(1.05); } }
@keyframes sobeEntra { from { opacity: 0; transform: translate3d(0, 100%, 0); } to { opacity: 1; transform: none; } }
@keyframes sobeEntraSub { from { opacity: 0; transform: translate3d(0, 100%, 0); } to { opacity: .4; transform: none; } }
@keyframes sobeDesce { 50% { transform: translateY(-10px); } }

/* ---------- WHATSAPP ---------- */
.whats {
  position: fixed; right: 15px; bottom: 15px; z-index: 999; width: 62px; height: 62px; border-radius: 50%;
  background: #004b09; color: #fff; display: grid; place-items: center;
}

/* ---------- S1: frases inclinadas, carrosséis e números ---------- */
.s1 { background: #000; padding: 87px 0 100px; overflow: hidden; position: relative; z-index: 1; display: flex; flex-direction: column; gap: 20px; }
.s1__frases { display: flex; justify-content: center; gap: 20px; padding-left: 51px; margin-bottom: 23px; }
.s1__frase { font-family: "Bruno Ace", sans-serif; font-size: 23px; line-height: 1.3; color: #919191; }
.s1__frase--esq { transform: skew(14deg, -8deg); }
.s1__frase--dir { transform: skew(-8deg, 8deg); margin-top: 4px; }
.s1__frase-mob { display: none; }
.s1__carrosseis { display: flex; gap: 20px; padding: 10px; margin-top: 8px; }
.s1__car { flex: 0 1 56%; max-width: 56%; overflow: hidden; }
.s1__car--esq { transform: skew(1deg, -8deg); }
.s1__car--dir { transform: skew(1deg, 8deg); }
.s1__trilho { display: flex; width: max-content; animation: deslizaFotos 20s linear infinite; }
.s1__trilho img { width: var(--larg, 747px); flex: none; aspect-ratio: 939 / 459; object-fit: cover; }
@keyframes deslizaFotos { to { transform: translateX(-50%); } }

.s1__numeros { display: flex; justify-content: center; gap: 20px; padding-left: 51px; margin: -25px 0 4px; }
.s1__grupo { display: flex; gap: 20px; flex: 0 1 auto; min-width: 0; }
.s1__grupo--esq { width: 768px; transform: skew(14deg, -8deg); }
.s1__grupo--dir { width: 757px; transform: skew(-8deg, 8deg); }
.num { display: flex; align-items: center; gap: 20px; padding: 10px; flex-shrink: 0; }
.num--a { width: 300px; } .num--b { width: 420px; } .num--c { width: 400px; padding: 0; } .num--d { width: 420px; padding: 0; }
.num strong, .numbox strong { font-family: "Bruno Ace", sans-serif; font-weight: 400; font-size: 43px; line-height: 1.3; color: rgba(255,255,255,.72); }
.num span, .numbox span { font-family: "Bruno Ace", sans-serif; font-size: 11px; line-height: 1.3; color: #7a7a7a; flex-shrink: 0; }
.num img, .numbox img { width: 18px; }
.s1__numeros-mob { display: none; }

/* ---------- PARA QUEM ---------- */
.pq { background: #000; padding: 150px 0 200px; display: flex; flex-direction: column; align-items: center; }
.pq__titulo { max-width: 983px; font-family: Michroma, sans-serif; font-size: 43px; line-height: 46px; color: #adadad; text-align: center; margin: 0 0 30px; padding: 0 10px; }
.pq__esfera { position: relative; width: 961px; max-width: 100%; margin-top: 28px; padding: 10px; display: flex; justify-content: center; }
.pq__img { width: 589px; animation: flutua 3s linear infinite; }
.bolha {
  position: absolute; display: flex; align-items: center; justify-content: center; border-radius: 500px;
  border: 1px solid #434343; color: #d4d4d4; font-family: Michroma, sans-serif; line-height: 1; transition: background-color .3s;
}
.bolha--grande { height: 60px; background: rgba(51,51,51,.55); font-size: 19px; padding: 0; gap: 4px; }
.bolha--grande:hover { background: #555; }
.bolha--grande img { width: 32px; height: 32px; margin: 0 4px 0 -12px; }
.bolha--peq { height: 45px; background: #000; font-size: 12px; }
.bolha--peq:hover { background: #1b1b1b; }
.b-pequenos { width: 350px; top: 118px; right: -45px; animation: flutuaDiag 3s linear infinite; }
.b-empresas { width: 250px; top: 91px; left: 37px; animation: flutua 3s linear infinite; }
.b-captacao { width: 250px; top: 1px; left: 328px; animation: flutuaVert 3s linear infinite; }
.b-fotos { width: 100px; bottom: 54px; left: 428px; animation: flutua 3s linear infinite; }
.b-videos { width: 100px; bottom: 236px; left: 156px; animation: flutuaDiag 3s linear infinite; }
.b-edicao { width: 200px; bottom: 245px; right: 54px; animation: flutuaVert 3s linear infinite; }
.b-lojas { width: 250px; bottom: 100px; right: 91px; animation: flutua 3s linear infinite; }
.b-startups { width: 250px; bottom: 73px; left: 110px; animation: flutuaVert 3s linear infinite; }
@keyframes flutua { from { transform: rotate(0) translate3d(5px,0,0) rotate(0); } to { transform: rotate(360deg) translate3d(5px,0,0) rotate(-360deg); } }
@keyframes flutuaVert { 50% { transform: translateY(-20px); } }
@keyframes flutuaDiag { 50% { transform: translate(10px, -10px); } }

/* ---------- SERVIÇOS ---------- */
.sv { background: #000; padding: 125px 0 100px; overflow: hidden; position: relative; display: flex; flex-direction: column; }
.fita { position: relative; padding: 10px 0; margin-top: 34px; overflow: hidden; }
.fita--azul { background: #0250bb; transform: rotate(-4deg); z-index: 10; margin-left: -1px; margin-right: -1px; }
.fita--preta { background: #000; transform: rotate(4deg); z-index: 2; margin-top: -100px; }
.fita__trilho { display: flex; width: max-content; animation: fitaVai 10s linear infinite; }
.fita__trilho--rev { animation-name: fitaVolta; }
.fita__trilho span {
  display: inline-flex; align-items: center; gap: 8px; padding-right: 5px; white-space: nowrap;
  font-family: Audiowide, sans-serif; font-size: 34px; text-transform: uppercase; color: #fff; line-height: 1.6;
}
.fita--preta .fita__trilho span { color: #a0a0a0; }
.fita__trilho span img { width: 61px; height: 61px; margin: 0 8px; }
@keyframes fitaVai { to { transform: translateX(-50%); } }
@keyframes fitaVolta { from { transform: translateX(-50%); } to { transform: translateX(0); } }
.sv__bg { position: absolute; top: 0; left: 0; width: 100%; padding-top: 120px; z-index: 1; }
.sv__cabeca { position: relative; z-index: 3; margin-top: 137px; padding: 10px; display: flex; flex-direction: column; align-items: center; gap: 20px; text-align: center; }
.sv__simbolo { width: 60px; }
.sv__tag { font-family: "Bruno Ace", sans-serif; font-size: 20px; font-weight: 300; line-height: 1.3; color: #006cff; }
.sv__cabeca h2 { max-width: 688px; font-family: Michroma, sans-serif; font-size: 38px; line-height: 46px; color: #fff; }
.sv__sub { max-width: 414px; font-family: Scada, sans-serif; font-size: 16px; line-height: 26px; color: #acacac; }
.sv__linha { position: relative; z-index: 10; width: 100%; max-width: 1300px; margin: 0 auto; padding: 0 10px 20px; display: flex; gap: 20px; }
.sv__linha:first-of-type { margin-top: 57px; }
.card {
  position: relative; height: 500px; overflow: hidden; background: #000; border: 1px solid #2e2e2e; border-radius: 14px;
  display: flex; flex-direction: column;
}
.card__img { position: absolute; }
.card__txt { position: relative; z-index: 1; display: flex; flex-direction: column; padding: 10px; }
.card h3 { font-family: Michroma, sans-serif; color: #bdbdbd; }
.card p { font-family: "Nunito Sans", sans-serif; font-size: 19px; line-height: 27px; color: #777; }
.card__icone { width: 50px; }
.card__titulo-icone { display: flex; align-items: center; gap: 8px; }
.card__titulo-icone img { flex: none; }

.card--planej, .card--edicao { flex: 0 0 750px; justify-content: center; padding-left: 45px; }
.card--planej .card__txt, .card--edicao .card__txt { width: 61%; gap: 28px; align-items: flex-start; }
.card--planej h3, .card--edicao h3 { width: 319px; max-width: 100%; font-size: 30px; line-height: 40px; }
.card--planej .card__img { right: -2px; top: 0; width: 365px; }
.card--edicao .card__img { right: 0; top: 0; width: 365px; }
.card--edicao p { color: #afafaf; }

.card--fotos { flex: 1 1 530px; padding-top: 38px; }
.card--fotos .card__txt { align-items: center; gap: 20px; }
.card--fotos h3 { width: 406px; max-width: 100%; font-size: 22px; line-height: 26px; }
.card--fotos h3 img { width: 50px; }
.card--fotos p { width: 426px; max-width: 100%; }
.card--fotos .card__img { left: 0; bottom: 0; width: 520px; }

.card--videos { flex: 1; justify-content: center; align-items: flex-end; padding-left: 45px; }
.card--videos .card__img { left: 0; top: 0; width: 743px; }
.card--videos .card__txt { width: 505px; gap: 28px; align-items: flex-start; }
.card--videos h3 { width: 406px; font-size: 25px; line-height: 38px; }
.card--videos h3 img { width: 54px; }
.card--videos p { width: 446px; max-width: 100%; font-size: 20px; line-height: 29px; }

.card--consult { flex: 1 1 530px; padding-top: 49px; }
.card--consult .card__txt { align-items: center; }
.card--consult h3 { width: 433px; max-width: 100%; margin-left: -10px; font-size: 26px; line-height: 39px; gap: 0; }
.card--consult h3 img { width: 90px; }
.card--consult p { width: 406px; max-width: 100%; margin-top: 28px; font-size: 22px; line-height: 31px; }
.sv__btn { align-self: center; margin-top: 25px; position: relative; z-index: 10; }

/* ---------- CASES ---------- */
.cases { background: #000; min-height: 1000px; padding-bottom: 100px; overflow: hidden; }
.cases__cabeca { max-width: 1300px; margin: 0 auto 29px; padding: 10px; display: flex; justify-content: space-between; align-items: center; }
.cases__cabeca > div { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; padding: 10px; }
.cases__montanha { width: 169px; }
.cases__titulo { font-size: 70px; line-height: 91px; }
.cases__icone { width: 81px; opacity: .44; }
#carousel1 { max-width: 96%; margin: auto; }
#carousel1 .splide__list { gap: 5px; }
.case-slide { position: relative; width: 586px; height: 673px; border-radius: 15px; overflow: hidden; display: block; cursor: pointer; }
.case-slide img { width: 100%; height: 100%; object-fit: cover; transition: opacity .1s; }
.case-slide:hover img { opacity: .4; }
.case-slide__over {
  position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start;
  background: linear-gradient(192deg, rgba(255,255,255,0) 57.01%, #000 102.91%); opacity: 0; transition: opacity .1s ease-in-out; border-radius: 15px;
}
.case-slide:hover .case-slide__over, .case-slide:focus-visible .case-slide__over { opacity: 1; }
.case-slide__info { text-align: left; padding: 0 20px 40px 40px; }
.case-slide__info h3 { color: #fff; font-family: Audiowide, sans-serif; font-size: 18px; margin: 0 0 9px; line-height: 1.2; }
.case-slide__info h2 { color: #fff; font-family: Michroma, sans-serif; font-size: 35px; line-height: 1.2; margin: 0 0 12px; }
.case-slide__info p { color: #cecece; font-family: "Nunito Sans", sans-serif; font-size: 21px; font-weight: 300; max-width: 90%; line-height: 1.4; }

/* ---------- PRODUÇÃO DE VÍDEOS ---------- */
.pv { background: #000; min-height: 900px; padding-top: 100px; display: flex; flex-direction: column; align-items: center; }
.pv__cabeca { display: flex; justify-content: center; align-items: center; gap: 20px; padding: 10px; margin-bottom: 15px; }
.pv__cabeca img { width: 68px; }
.pv__cabeca h2 { font-size: 57px; text-align: center; }
.pv__carrossel { width: 95%; }
.pv-card { height: 100%; background: #000; border: 1px solid #6d6d6d; border-radius: 20px; padding-bottom: 50px; display: flex; flex-direction: column; align-items: center; }
.pv-card__topo { width: 100%; display: flex; justify-content: space-between; padding: 40px 60px 0 30px; }
.pv-card__textos { display: flex; flex-direction: column; gap: 14px; padding: 10px; }
.pv-card__tag { font-family: Audiowide, sans-serif; font-size: 13px; line-height: 1; color: #fff; }
.pv-card__nome { font-family: Michroma, sans-serif; font-size: 25px; line-height: 1; color: #fff; }
.pv-card__desc { max-width: 400px; font-family: "Nunito Sans", sans-serif; font-size: 16px; font-weight: 300; line-height: 24px; color: #cecece; }
.pv-card__rede { flex: none; color: #c5c5c5; }
.pv-card__rede--instagram { margin-top: 27px; width: 29px; }
.pv-card__rede--youtube { width: 89px; }
.pv-card__midias { width: 94%; display: flex; gap: 20px; padding: 10px 43px 0; }
.pv-card--h .pv-card__midias > * { width: 100%; }
.pv-card--v .pv-card__midias > * { flex: 1; }
.pv-card__midias > * { min-width: 0; } /* sem isso as fotos do card do Zeca esticam e o vídeo do meio some */
.pv-card__foto { border-radius: 13px; width: 100%; aspect-ratio: 9 / 16; object-fit: cover; }

/* player com capa (o vídeo só carrega ao clicar) */
.player { position: relative; display: block; width: 100%; padding: 0; border: 0; background: #000; border-radius: 10px; overflow: hidden; aspect-ratio: 16 / 9; }
.player--v { aspect-ratio: 9 / 16; }
.player img { width: 100%; height: 100%; object-fit: cover; }
.player iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.player__play { position: absolute; left: 50%; top: 50%; width: 74px; height: 74px; translate: -50% -50%; border-radius: 50%; border: 3px solid rgba(255,255,255,.9); filter: drop-shadow(0 0 3px rgba(0,0,0,.4)); }
.player__play::after { content: ""; position: absolute; left: 54%; top: 50%; translate: -50% -50%; border-style: solid; border-width: 13px 0 13px 22px; border-color: transparent transparent transparent rgba(255,255,255,.9); }
.player--v .player__play { width: 46px; height: 46px; border-width: 2px; }
.player--v .player__play::after { border-width: 8px 0 8px 14px; }

/* paginação (bolinhas) */
.splide__pagination { display: flex; justify-content: center; gap: 0; margin: 30px 0 0; padding: 0; position: static; }
.splide__pagination li { display: flex; }
.splide__pagination__page { width: 13px; height: 13px; margin: 0 5px; padding: 0; border: 0; border-radius: 50%; background: #afafaf; opacity: .25; transition: opacity .2s; }
.splide__pagination__page:hover { background: #494848; opacity: 1; }
.splide__pagination__page.is-active { opacity: 1; background: #afafaf; }

/* ---------- BENEFÍCIOS ---------- */
.bn { background: #000; padding: 200px 0 100px; display: flex; flex-direction: column; align-items: center; gap: 20px; overflow: hidden; }
.bn__abstrato { width: 146px; opacity: .47; }
.bn h2 { max-width: 834px; padding: 0 10px; font-family: Michroma, sans-serif; font-size: 38px; line-height: 46px; color: #fff; text-align: center; }
.bn__sub { max-width: 733px; padding: 0 10px; font-family: Roboto, sans-serif; font-size: 16px; line-height: 26.4px; color: #7a7a7a; text-align: center; }
.bn__grade { position: relative; width: 1280px; max-width: 100%; margin-top: 37px; padding: 10px; display: flex; gap: 49px; }
.bn__col { flex: 1 1 416px; display: flex; flex-direction: column; gap: 20px; }
.bn__item { display: flex; flex-direction: column; gap: 20px; }
.bn__item h3 { display: flex; align-items: center; gap: 12px; font-family: "Bruno Ace", sans-serif; font-size: 21px; line-height: 1.6; color: #fff; }
.bn__item h3 img { width: 51px; flex: none; }
.bn__item p { font-family: Roboto, sans-serif; font-size: 16px; line-height: 26.4px; color: #7a7a7a; }
.bn__i1 { margin-top: 96px; } .bn__i2 { margin-top: 24px; }
.bn__i3 { margin-top: -19px; } .bn__i4 { margin-top: 34px; } .bn__i5 { margin-top: 86px; }
.bn__trilha { flex: 0 1 330px; width: 330px; margin-left: -20px; align-self: flex-start; }
.bn__trilha-mob { display: none; }

/* ---------- PLANOS ---------- */
.pl { background: #000; padding: 200px 0 100px; display: flex; flex-direction: column; align-items: center; overflow: hidden; }
.pl__cabeca { position: relative; z-index: 10; width: 100%; max-width: 1280px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.pl__icone { width: 81px; opacity: .38; }
.pl__cabeca h2 { max-width: 606px; font-family: Michroma, sans-serif; font-size: 38px; line-height: 46px; color: #fff; }
.pl__cabeca p { max-width: 496px; font-family: "Nunito Sans", sans-serif; font-size: 18px; line-height: 1.65; color: #d3d3d3; }
.pl__cabeca .btn-borda { margin-top: 25px; }
.pl__carrossel { width: 1280px; max-width: 100%; margin-top: -500px; }
.pl__carrossel .splide__list { align-items: flex-end; }
.pl__carrossel .splide__slide { padding: 0 10px; }
.plano {
  display: flex; flex-direction: column; padding: 40px; border-radius: 37.5px; color: #fff;
  -webkit-backdrop-filter: blur(23px); backdrop-filter: blur(23px);
}
.plano--essencial { border: 1px solid rgba(236,236,236,.15); background: linear-gradient(195deg, rgba(3,56,170,.1) 0%, rgba(3,56,170,.22) 50%, rgba(3,56,170,.06) 100%); }
.plano--avancado { border: 1px solid rgba(199,63,22,.32); border-radius: 41.3px; background: linear-gradient(rgba(199,63,22,.12) 0%, rgba(199,63,22,.04) 50%, rgba(199,63,22,.07) 100%); }
.plano--premium { border: 1px solid #490079; background: linear-gradient(195deg, rgba(108,22,199,.15) 0%, rgba(108,22,199,.14) 50%, rgba(108,22,199,.24) 100%); }
.plano__nome { display: flex; align-items: center; gap: 8px; font-family: "Space Grotesk", sans-serif; font-size: 23px; font-weight: 700; line-height: 1.65; color: #fff; }
.plano__nome img { width: 24px; }
.plano__desc { margin: 15px 0 0; font-family: "Space Grotesk", sans-serif; font-size: 14px; line-height: 23.1px; color: #afafaf; }
.plano--essencial .plano__desc { margin-bottom: -5px; }
.plano--avancado .plano__desc, .plano--premium .plano__desc { margin-bottom: 20px; }
.plano__desc b { font-weight: 700; }
.plano__receber { margin: 10px 0 19px; font-family: "Space Grotesk", sans-serif; font-size: 19px; font-weight: 600; line-height: 1; color: #fff; }
.plano--avancado .plano__receber, .plano--premium .plano__receber { margin-bottom: 15px; }
.plano__lista li { position: relative; display: block; padding: 0 0 13px 32px; font-family: Roboto, sans-serif; font-size: 15px; line-height: 1.5; color: rgba(177,177,177,.8); }
.plano--avancado .plano__lista li { padding-top: 5px; }
.plano__lista li::before { content: ""; position: absolute; left: 0; top: 50%; width: 24px; height: 24px; margin-top: -18px; background: var(--ic) center / contain no-repeat; }
.plano--avancado .plano__lista li::before { margin-top: -15px; }
.plano__lista b { color: rgba(255,255,255,.8); font-weight: 700; margin: 0 5px; }
.plano__youtube { position: relative; margin-top: 22px; padding: 8px; border-radius: 15px; background: rgba(255,0,0,.46); }
.plano__yt-logo { position: absolute; top: -45px; left: 18px; width: 109px; height: 93px; object-fit: contain; }
.plano__lista--yt { padding: 15px; }
.plano__lista--yt li { font-size: 14px; padding-bottom: 5px; padding-left: 30px; }
.plano__lista--yt li::before { width: 22px; height: 22px; margin-top: -14px; }
.plano__div { width: 87%; margin: 34px auto; border: 0; border-top: 1px solid #acacac; }
.plano__btn {
  align-self: center; padding: 20px 60px; border-radius: 14px; border: 1.17px solid rgba(255,255,255,.1);
  font-family: "Space Grotesk", sans-serif; font-size: 17px; font-weight: 700; line-height: 1; color: #fff;
  transition: transform .3s;
}
.plano__btn:hover { transform: scale(1.1); }
.plano--essencial .plano__btn { background: linear-gradient(rgba(255,255,255,.08) 0%, rgba(255,255,255,0) 100%); }
.plano--avancado .plano__btn { background: #c73f16; color: #000; }
.plano--premium .plano__btn { background: linear-gradient(90deg, #7b00ff 0%, #4a0099 100%); }

/* ---------- CONTATO ---------- */
.ct { background: #000; padding: 60px 0 150px; display: flex; flex-direction: column; align-items: center; gap: 20px; }
.ct__simbolo { width: 88px; }
.ct h2 { max-width: 606px; font-family: Michroma, sans-serif; font-size: 38px; line-height: 51px; color: #fff; text-align: center; padding: 0 10px; }
.ct__form { width: 720px; max-width: calc(100% - 20px); margin-top: 28px; display: flex; flex-wrap: wrap; margin-inline: auto; }
.campo { width: 50%; padding: 0 10px; margin-bottom: 20px; display: flex; flex-direction: column; }
.campo--largo { width: 100%; }
.campo label { padding-bottom: 16px; font-family: Michroma, sans-serif; font-size: 18px; line-height: 20px; color: #7a7a7a; }
.campo input, .campo textarea {
  width: 100%; min-height: 59px; padding: 7px 20px; background: #000; color: #7a7a7a;
  border: 1px solid #444; border-radius: 9px; font-family: Roboto, sans-serif; font-size: 18px;
}
.campo textarea { min-height: 0; resize: vertical; }
.campo input::placeholder, .campo textarea::placeholder { color: #757575; }
.campo input:focus, .campo textarea:focus { outline: 0; border-color: #777; }
.campo--btn { align-items: center; }
.ct__enviar {
  margin-top: 20px; padding: 20px 100px; border: 0; border-radius: 12px; background: #0250bb; color: #fff;
  font-family: Roboto, sans-serif; font-size: 15px; font-weight: 500; line-height: 1; transition: transform .3s;
}
.ct__enviar:hover { transform: scale(1.1); }
.form-msg { width: 100%; padding: 0 10px; text-align: center; font-family: Roboto, sans-serif; font-size: 15px; color: #cecece; }
.form-msg:empty { display: none; }
.form-msg a { color: #fff; text-decoration: underline; }
form .campo input.erro, form .campo textarea.erro, form .campo input.erro:focus, form .campo textarea.erro:focus { border-color: #ff6b6b; }

/* ---------- RODAPÉ ---------- */
.rp { background: #0f0f0f; display: flex; flex-direction: column; align-items: center; padding: 0 0 0; }
.rp__simbolo { width: 60px; margin: -19px 0 -34px; position: relative; top: 19px; }
.rp h2 { margin: 37px 0 3px; font-family: Michroma, sans-serif; font-size: 32px; line-height: 51px; color: #fff; text-align: center; padding: 0 10px; }
.rp__linha { width: 625px; max-width: 100%; margin-top: 9px; display: flex; justify-content: space-between; align-items: center; }
.rp__linha p { font-family: Michroma, sans-serif; font-size: 15px; font-weight: 600; color: #aeaeae; }
.rp__redes { display: flex; gap: 20px; }
.redondo { width: 42px; height: 42px; border-radius: 50%; background: #000; color: #fff; display: grid; place-items: center; }
.redondo svg { width: 21px; height: 21px; fill: currentColor; }
.redondo--branco { background: #fff; color: #000; }
.rp__copy { margin: 20px 0 0; padding-bottom: 22px; font-family: "Nunito Sans", sans-serif; font-size: 18px; line-height: 29.7px; color: #e9e9e9; }

/* ---------- POPUPS ---------- */
.pop { position: fixed; inset: 0; z-index: 9999; display: flex; justify-content: center; align-items: center; background: rgba(0,0,0,.8); animation: fadePop .3s; }
.pop[hidden] { display: none; }
@keyframes fadePop { from { opacity: 0; } }
.pop__caixa { position: relative; max-height: 100vh; overflow-y: auto; box-shadow: 2px 8px 23px 3px rgba(0,0,0,.2); }
.pop__fechar:focus:not(:focus-visible) { outline: none; }
.pop__fechar {
  position: absolute; top: 20px; right: 20px; z-index: 5; width: 34px; height: 34px; border-radius: 50%; border: 0; padding: 0;
  display: grid; place-items: center; background: transparent; color: #fff; font-size: 28px; line-height: 1;
}
body.travado { overflow: hidden; }

/* menu lateral */
.pop--menu { justify-content: flex-end; }
.pop--menu .pop__caixa { width: 350px; height: 100vh; background: #000; animation: entraDireita .5s; }
.pop--menu .pop__fechar { background: #2e2e2e; font-size: 22px; }
@keyframes entraDireita { from { transform: translateX(100%); } }
.menu { padding: 98px 0 30px; display: flex; flex-direction: column; align-items: center; gap: 20px; }
.menu__logo { width: 131px; opacity: .79; margin-bottom: 10px; }
.menu__titulo { padding-bottom: 5px; border-bottom: 1px solid; font-family: Michroma, sans-serif; font-size: 20px; line-height: 1.3; color: dimgray; }

.menu a img { width: 14px; }
.menu hr { width: 54%; margin: 15px 0; border: 0; border-top: 1px solid #414141; }
.menu__nome { font-family: Michroma, sans-serif; font-size: 13px; font-weight: 600; color: #d1d1d1; }
.menu__cidade { font-family: Michroma, sans-serif; font-size: 15px; font-weight: 600; color: #7c7c7c; }
.menu__redes { display: flex; gap: 20px; }

/* segmentos (para quem) */
.pop--seg { background: rgba(0,0,0,.88); }
.pop--seg .pop__caixa { width: 738px; max-width: calc(100% - 20px); padding: 40px 50px 60px; background: #000; border: 1px solid #5c5c5c; border-radius: 29px; display: flex; flex-direction: column; gap: 20px; }
.pop--seg h3 { max-width: 596px; display: flex; align-items: center; gap: 10px; font-family: Michroma, sans-serif; font-size: 26px; line-height: 1.5; color: #fff; }
.pop--seg h3 img { width: 54px; flex: none; }
.pop--seg p { font-family: "Nunito Sans", sans-serif; font-size: 20px; line-height: 1.5; color: #7a7a7a; }

/* formulário dos planos */
.pop--plano .pop__caixa { width: 500px; max-width: calc(100% - 20px); border-radius: 23px; }
.plano-form { padding: 40px 30px 50px; border: 1px solid #666; border-radius: 20px; display: flex; flex-direction: column; align-items: center; }
.pop--essencial .plano-form { background: linear-gradient(#000d30 0%, #000 100%); }
.pop--avancado .plano-form { background: linear-gradient(#581400 0%, #000 100%); }
.pop--premium .plano-form { background: linear-gradient(#300053 0%, #000 100%); }
.pop--plano .pop__fechar { top: 5%; right: 4%; width: 22px; height: 22px; border-radius: 0; background: #fff; color: #000; font-size: 19px; }
.plano-form__icone { width: 51px; }
.plano-form h3 { margin-top: 20px; font-family: Michroma, sans-serif; font-size: 24px; line-height: 1.3; color: #fff; text-align: center; }
.plano-form__plano { margin-top: 20px; display: flex; align-items: center; gap: 11px; }
.plano-form__plano span:first-child { padding-bottom: 2px; border-bottom: 1px solid #3b3b3b; font-family: Michroma, sans-serif; font-size: 15px; line-height: 1; color: #b8b8b8; }
.plano-form__plano strong { display: inline-flex; align-items: center; gap: 8px; font-family: "Space Grotesk", sans-serif; font-size: 23px; font-weight: 700; color: #fff; }
.plano-form__plano img { width: 24px; }
.plano-form form { margin-top: 25px; display: flex; flex-wrap: wrap; margin-inline: -5px; width: calc(100% + 10px); }
.plano-form .campo { padding: 0 5px; }
.plano-form .campo label { padding-bottom: 8px; font-family: "Bruno Ace", sans-serif; font-size: 15px; color: #d8d8d8; }
.plano-form .campo input { min-height: 40px; padding: 5px 14px; font-size: 15px; background: transparent; color: #c4c4c4; border-color: #5e5e5e; border-radius: 3px; }
.plano-form button[type=submit] { margin-top: 20px; padding: 18px 35px; border: 0; border-radius: 12px; font-family: Roboto, sans-serif; font-size: 15px; font-weight: 500; line-height: 1; background: #d8d8d8; color: #000; }
.pop--essencial .plano-form button[type=submit] { background: #0250bb; color: #fff; }

/* case: tela cheia com galeria e vídeos */
.pop--case .pop__caixa { width: 100vw; height: 100vh; background: #000; padding-top: 50px; display: flex; flex-direction: column; }
.pop--case .pop__fechar { background: #3d3d3d; font-size: 22px; right: 40px; }
.case-pop { display: flex; flex-direction: column; align-items: center; gap: 20px; }
.case-pop h2 { margin-bottom: 20px; font-family: "Bruno Ace", sans-serif; font-size: 35px; line-height: 1.3; color: #fff; text-align: center; padding: 0 10px; }
.case-pop .conteudo { display: none; width: 100%; }
.case-pop .conteudo.ativo { display: flex; }
.case-pop .splide { width: 100%; margin-bottom: 20px; }
.case-pop .splide__list { gap: 20px; }
.case-pop .splide__slide { height: 55vh; }
.case-pop .splide__slide img { height: 100%; width: auto; max-width: none; object-fit: cover; }
.case-pop .splide__pagination { position: absolute; bottom: .5em; left: 0; right: 0; margin: 0; }
.case-pop .splide__pagination__page { width: 8px; height: 8px; margin: 3px; background: #ccc; opacity: .7; }
.case-pop .splide__pagination__page.is-active { background: #fff; transform: scale(1.4); }
.case-pop__videos { min-height: 55vh; max-width: 1280px; margin: 0 auto -20px; justify-content: center; align-items: center; gap: 20px; padding: 0 10px; }
.case-pop__videos--h .player { width: 48%; }
.case-pop__videos--v { min-height: 50vh; }
.case-pop__videos--v .player { width: 20%; }
.abas { display: flex; position: relative; background: #0b0b0b; padding: 5px; border-radius: 50px; border: 1px solid #6f6f6f; }
.aba { width: 160px; flex: 1; font-family: Michroma, sans-serif; font-size: 18px; color: #ccc; background: transparent; border: 0; padding: 10px 0; border-radius: 50px; text-align: center; line-height: 1.3; }
.aba.ativo { color: #fff; background: #565656; box-shadow: inset 0 2.8px 11.2px 1.4px rgba(0,0,0,.5), 0 2.8px 2.8px rgba(0,0,0,.25); }

/* animações infinitas pausadas quando a seção está fora da tela (classe posta pelo main.js) */
.fora *, .fora *::before, .fora *::after { animation-play-state: paused !important; }

/* =========================================================================
   RESPONSIVO
   ========================================================================= */
@media (max-width: 1366px) {
  .s1__frase { font-size: 19px; }
  .num strong { font-size: 24px; }
  .s1__grupo--dir { width: 680px; }
  .num--a { width: 250px; } .num--b { width: 350px; } .num--c { width: 300px; } .num--d { width: 260px; }
  .pl__cabeca { max-width: 1100px; }
  .sv__sub { max-width: 493px; }
  .card--planej h3 { width: 301px; }
  .card--edicao h3 { width: 301px; }
  .card--videos .card__img { width: 589px; left: 1px; top: 1px; }
  .card--videos { height: 400px; }
  .card--consult h3 { width: 415px; font-size: 25px; }
  .card--consult h3 img { width: 86px; }
  .card--consult p { width: 370px; font-size: 20px; }
  .card--edicao .card__img { right: -71px; }
  .pv__cabeca h2 { font-size: 44px; }
  .pv-card__textos { gap: 10px; }
  .pv-card__nome { font-size: 22px; }
  .bn__item h3 { font-size: 18px; }
  .bn__item p { font-size: 14px; }
  .bn__trilha { flex-basis: 330px; }
  .pl__carrossel { width: 1100px; }
  .ct__simbolo { width: 72px; }
  .ct h2 { font-size: 34px; }
  .ct__form { width: 682px; }
  .rp h2 { font-size: 26px; }
  .rp__copy { font-size: 15px; }
}

@media (max-width: 1200px) {
  .pl__carrossel .splide__list { align-items: flex-start; }
  .pl__carrossel .splide__track { transition: height .3s; }
  .hero__titulo-anim { display: none; }
  .hero__titulo-estatico { position: static; height: auto; overflow: visible; clip-path: none; white-space: normal; display: block; width: 710px; max-width: 100%; font-size: 36px; line-height: 1.3; }
  .s1__numeros { display: none; }
  .s1__numeros-mob { display: flex; flex-direction: column; align-items: center; gap: 20px; margin-top: 32px; }
  .s1__linha { width: 768px; max-width: 100%; display: flex; gap: 20px; }
  .numbox { flex: 1; display: flex; justify-content: center; align-items: center; gap: 20px; padding: 10px; background: #000; border: 2.4px solid #4e4e4e; }
  .numbox strong { font-size: 28px; }
  .pq__titulo { max-width: 924px; font-size: 36px; }
  .pq__img { width: 553px; }
  .b-pequenos { right: 38px; }
  .sv__sub { max-width: 528px; }
  .card--planej .card__txt, .card--edicao .card__txt { gap: 15px; }
  .card--planej h3 { font-size: 26px; }
  .card--planej p, .card--fotos p, .card--edicao p { font-size: 17px; line-height: 23px; }
  .card--fotos .card__txt { padding: 37px; }
  .card--fotos h3 { font-size: 18px; }
  .card--videos { height: 350px; }
  .card--videos .card__img { width: 518px; }
  .card--videos h3 { font-size: 20px; }
  .card--videos p { width: 375px; font-size: 17px; line-height: 25px; }
  .card--consult h3 { width: 326px; margin: 41px 0 0 -17px; font-size: 19px; line-height: 31px; }
  .card--consult p { width: 311px; font-size: 18px; line-height: 27px; }
  .card--planej, .card--edicao { flex-basis: 58%; }
  .card--edicao h3 { font-size: 26px; }
  /* tablet (medidas do original): cards num bloco de 924px, vídeos com título menor, planos centralizados abaixo do título */
  .sv__linha { max-width: 944px; }
  .card--planej, .card--edicao { flex: 0 0 535px; }
  .pv__cabeca h2 { font-size: 37px; }
  .pl__cabeca { max-width: 516px; padding: 0 10px; align-items: center; text-align: center; }
  .pl__carrossel { width: 500px; margin-top: 80px; }
}

@media (max-width: 1024px) {
  .card--planej, .card--edicao, .card--fotos, .card--consult { height: 450px; }
  .card--videos { height: 280px; }
  .s1__frase { font-size: 15px; }
  .sv__linha { max-width: 800px; }
  .card--planej, .card--edicao { flex: 1 1 0; }
  .card--fotos, .card--consult { flex: 1 1 0; }
}

@media (max-width: 880px) {
  .pq__titulo { max-width: 728px; font-size: 30px; }
  .card--fotos .card__txt { padding: 21px; }
  .card--fotos h3 { font-size: 20px; }
  .card--fotos p { font-size: 16px; }
  .card--videos .card__img { width: 435px; left: -69px; }
  .card--consult { padding-top: 77px; }
  .card--consult h3 { width: 273px; margin: 0 0 0 -9px; font-size: 16px; line-height: 26px; }
  .card--consult h3 img { width: 59px; }
  .card--consult p { width: 247px; font-size: 17px; line-height: 24px; }
  .card--edicao .card__img { right: -153px; }
  .pv__cabeca img { width: 57px; }
  .sv__linha { max-width: 748px; }
  .bn h2 { max-width: 564px; font-size: 32px; }
  .bn__sub { max-width: 535px; }
  .bn__grade { width: 450px; flex-direction: column; gap: 30px; }
  .bn__col { gap: 30px; z-index: 8; flex: none; }
  .bn__i1, .bn__i2, .bn__i3, .bn__i4, .bn__i5 { margin-top: 0; }
  .bn__item h3 { font-size: 20px; }
  .bn__item p { font-size: 16px; }
  .bn__trilha { display: none; }
  .bn__trilha-mob { display: block; position: absolute; top: 0; left: 0; width: 632px; max-width: none; margin: -85px 0 0 -104px; opacity: .2; }
  .pl__carrossel { width: 500px; }
  .ct h2 { font-size: 31px; line-height: 42px; }
  .ct__form { width: 597px; }
}

@media (max-width: 767px) {
  /* hero */
  .hero__bg { object-position: center center; }
  .hero__menu { display: none; }
  .hero__hamburger { display: block; }
  .hero__centro { margin-top: 63px; }
  .hero__icone { width: 18%; }
  .hero__titulo-estatico { width: 360px; font-size: 32px; line-height: 45px; }
  .hero__sub { font-size: 22px; }

  /* s1 */
  .s1 { display: flex; flex-direction: column; align-items: center; }
  .s1__frases { display: none; }
  .s1__frase-mob { display: block; width: 360px; max-width: 100%; margin: -11px 0 30px; font-family: "Bruno Ace", sans-serif; font-size: 21px; line-height: 31px; color: #919191; text-align: center; }
  .s1__carrosseis { width: 100%; padding: 40px 0; }
  .s1__car--esq { display: none; }
  .s1__car--dir { flex: 1 1 100%; max-width: 100%; transform: scale(1.4); }
  .s1__trilho img { width: 100vw; }
  .s1__numeros-mob { width: 350px; max-width: calc(100% - 20px); margin-top: 0; padding-top: 28px; }
  .s1__linha { gap: 20px; flex-wrap: wrap; }
  .numbox { flex: 0 0 100%; gap: 14px; padding: 10px 0; border-width: 1px; border-radius: 10px; }
  .numbox strong { font-size: 22px; }
  .numbox img { width: 16px; }

  /* para quem */
  .pq { padding: 100px 0; }
  .pq__titulo { width: 360px; font-size: 32px; margin-bottom: 25px; }
  .pq__esfera { width: 360px; margin-top: 8px; padding: 0; }
  .pq__img { width: 322px; }
  .bolha--grande { height: 50px; font-size: 10px; }
  .bolha--grande img { width: 22px; height: 22px; margin: 0 4px 0 0; }
  .b-pequenos { width: 130px; top: 60px; right: 1px; }
  .b-empresas { width: 150px; top: 69px; left: -9px; }
  .b-captacao { width: 160px; top: 1px; left: 105px; font-size: 8px; }
  .b-fotos { width: 100px; bottom: -4px; left: 148px; font-size: 11px; }
  .b-videos { width: 100px; bottom: 120px; left: 4px; font-size: 11px; }
  .b-edicao { display: none; }
  .b-lojas { width: 130px; bottom: 77px; right: -1px; }
  .b-startups { width: 130px; bottom: 38px; left: 4px; }

  /* serviços */
  .fita { margin-top: 0; padding: 5px 0; }
  .fita--azul { transform: rotate(-7deg); z-index: 20; }
  .fita--preta { transform: rotate(7deg); margin-top: -53px; z-index: 19; }
  .fita__trilho span { font-size: 16px; padding: 5px; }
  .fita__trilho span img { width: 40px; height: 40px; }
  .sv__simbolo { width: 51px; }
  .sv__tag { font-size: 16px; }
  .sv__cabeca h2 { width: 360px; max-width: 100%; font-size: 21px; line-height: 31px; }
  .sv__sub { max-width: 326px; font-size: 13px; }
  .sv__linha { max-width: 370px; flex-direction: column; }
  .card { flex: none !important; width: 100%; }
  .card--planej { height: 500px; justify-content: flex-end; padding: 4px 84px 49px 19px; }
  .card--planej .card__img { width: 465px; max-width: none; right: auto; left: 76px; }
  .card--planej .card__txt, .card--edicao .card__txt { width: 300px; max-width: 100%; gap: 17px; justify-content: center; }
  .card--planej h3, .card--edicao h3 { font-size: 25px; line-height: 1.3; }
  .card--planej p, .card--edicao p, .card--fotos p { font-size: 15px; line-height: 19px; }
  .card--fotos { height: 400px; padding-top: 28px; }
  .card--fotos .card__txt { padding: 19px 19px 19px 29px; }
  .card--fotos h3 { font-size: 20px; }
  .card--fotos h3 img { width: 40px; }
  .card--videos { height: 450px; justify-content: flex-end; align-items: center; padding: 0; }
  .card--videos .card__img { left: 0; top: 0; width: 100%; height: 52%; object-fit: cover; } /* foto em cima, texto embaixo (como no original) */
  .card--videos .card__txt { width: 100%; padding: 19px; gap: 12px; align-items: center; }
  .card--videos h3 { width: auto; font-size: 17px; line-height: 24px; }
  .card--videos p { width: auto; font-size: 15px; line-height: 21px; }
  .card--consult { height: 400px; padding-top: 26px; }
  .card--consult .card__txt { padding: 0 18px 0 0; }
  .card--consult h3 { width: 273px; margin: 0; font-size: 19px; line-height: 29px; }
  .card--consult h3 img { width: 74px; }
  .card--consult p { width: 247px; font-size: 16px; line-height: 28px; }
  .card--edicao { height: 500px; justify-content: flex-start; align-items: flex-start; padding: 0 48px 48px 26px; }
  .card--edicao .card__img { right: -140px; width: 482px; max-width: none; }

  /* cases */
  .cases { min-height: 0; }
  .cases__cabeca { max-width: 380px; }
  .cases__cabeca > div { width: 200px; }
  .cases__montanha { width: 99px; margin-bottom: -14px; }
  .cases__titulo { font-size: 41px; }
  .cases__icone { width: 41px; }
  .case-slide { width: 350px; height: 400px; }
  .case-slide__info { padding: 0 20px 40px 30px; }
  .case-slide__info h3 { font-size: 12px; margin: 9px 0; }
  .case-slide__info h2 { font-size: 17px; margin: 0 0 10px; }
  .case-slide__info p { font-size: 13px; }
  .case-slide .case-slide__over { opacity: 1; }

  /* vídeos */
  .pv { min-height: 0; padding: 30px; }
  .pv__cabeca { max-width: 360px; }
  .pv__cabeca h2 { font-size: 36px; line-height: 1.4; }
  .pv__carrossel { width: 360px; max-width: 100%; }
  .pv-card { min-height: 520px; padding-bottom: 50px; }
  .pv-card__topo { flex-direction: column-reverse; align-items: center; padding: 40px 0 0; }
  .pv-card__textos { width: 300px; align-items: center; text-align: center; }
  .pv-card__desc { font-size: 13px; line-height: 19px; }
  .pv-card__nome { font-size: 20px; line-height: 26px; }
  .pv-card__rede--instagram { margin: 10px 0 -6px; }
  .pv-card__rede--youtube { width: 86px; margin: -9px 0 -45px; }
  .pv-card__midias { width: 100%; justify-content: center; align-items: center; padding: 18px; flex: 1; }
  .pv-card--v .pv-card__midias { gap: 10px; }

  /* benefícios */
  .bn h2 { width: 360px; font-size: 23px; line-height: 36px; }
  .bn__sub { width: 366px; max-width: 100%; font-size: 13px; }
  .bn__grade { width: 330px; gap: 0; }
  .bn__col { gap: 30px; z-index: 3; }
  .bn__col--dir { margin-top: 30px; }
  .bn__item h3 { font-size: 17px; }
  .bn__item p { font-size: 14px; }
  .bn__trilha-mob { width: 534px; margin: -20px 0 0 -74px; z-index: 1; }

  /* planos */
  .pl { padding: 50px 0; }
  .pl__cabeca { width: 360px; max-width: 100%; padding: 0; align-items: center; text-align: center; }
  .pl__cabeca h2 { font-size: 22px; line-height: 1.6; text-align: center; }
  .pl__cabeca p { width: 395px; max-width: 100%; font-size: 16px; }
  .pl__cabeca .btn-borda { margin-top: 0; }
  .pl__carrossel { width: 360px; margin-top: 20px; }
  .plano { padding: 40px; }
  .plano__btn { padding: 20px 50px; }

  /* contato e rodapé */
  .ct h2 { font-size: 22px; line-height: 1.3; }
  .ct__form { width: 330px; }
  .campo { width: 100%; }
  .ct__enviar { padding: 20px 80px; }
  .rp h2 { font-size: 17px; }
  .rp__linha { flex-direction: column; padding-top: 8px; gap: 10px; }

  /* popups */
  .pop--seg .pop__caixa { width: 360px; padding: 40px 30px 50px; }
  .pop--seg h3 { font-size: 16px; }
  .pop--seg h3 img { width: 26px; }
  .pop--seg p { font-size: 16px; }
  .pop--seg .btn-borda { align-self: center; }
  .pop--plano .pop__caixa { width: 360px; }
  .plano-form h3 { font-size: 19px; }
  .pop--plano .pop__fechar { top: 4%; right: 8%; }
  .pop--case .pop__fechar { right: 20px; }
  .case-pop h2 { width: 360px; font-size: 30px; line-height: 1.2; }
  .case-pop .splide__slide { height: 45vh; }
  .case-pop__videos { flex-direction: column; padding: 29px; margin-bottom: -20px; }
  .case-pop__videos--h .player { width: 100%; max-width: 360px; }
  .case-pop__videos--v .player { width: 77%; }
  .abas { margin-bottom: 100px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition: none !important; }
  .hero__titulo-anim span { opacity: 1; transform: none; color: #fff; }
}
