.elementor-9899 .elementor-element.elementor-element-b0a46fe{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9899 .elementor-element.elementor-element-454d174{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-9899 .elementor-element.elementor-element-e5ce844{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-9899 .elementor-element.elementor-element-4638fc7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-9899 .elementor-element.elementor-element-07ef2eb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}body.elementor-page-9899:not(.elementor-motion-effects-element-type-background), body.elementor-page-9899 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}/* Start custom CSS *//* ==========================================================================
   CSS GLOBAL LANDING PAGE — TOTALMENTE INDEPENDENTE (SEM ALTERAR O ROOT HTML)
   Esta versão preserva o tamanho de fonte raiz do Elementor (1rem = 10px),
   garantindo que o Header, Footer, Menus e Botões do tema não sofram alterações.
   ========================================================================== */

/* ===================== ESCOPO & ESPECIFICIDADE DE PRIORIDADE ===================== */

body .p2 {
  /* ----- TOKENS ----- */
  --p2-bg:#1B1D1F;
  --p2-fg:#EAEAEA;
  --p2-muted:#C2C2C2;
  --p2-green:#00FF5C;
  --p2-red:#DE3A4F;
  --p2-line:rgba(234,234,234,.10);
  --p2-serif:'Hedvig Letters Serif', Georgia, serif;
  --p2-sans:'Instrument Sans', system-ui, sans-serif;
  --p2-mono:'IBM Plex Mono', monospace;
  --p2-script:'Caveat', cursive;

  position:relative;
  background: transparent !important; /* Mantido transparente para revelar o fog/fundo */
  color:var(--p2-fg) !important;
  font-family:var(--p2-sans) !important;
  overflow:visible;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* Reset de Box-sizing interno */
body .p2 * {
  box-sizing:border-box !important;
  margin:0;
  padding:0;
}

/* Força elementos básicos de texto a herdarem a cor base de texto definida na .p2 e anula heranças do tema */
body .p2 h1, 
body .p2 h2, 
body .p2 h3, 
body .p2 h4, 
body .p2 p, 
body .p2 span:not(.p2-badge):not(.p2-sur):not(.p2-arrow), 
body .p2 li {
  color: inherit;
}

body .p2 ::selection {
  background:rgba(0,255,92,.22) !important;
  color:#fff !important;
}

/* ===================== FUNDO SÓLIDO FIXO E FOG (SETUP) ===================== */

body .p2-backdrop {
  position: fixed;
  inset: 0;
  background: #1B1D1F !important;
  z-index: -2 !important;
  pointer-events: none;
}

body .p2 .p2-fog {
  position: fixed !important;
  inset: 0 !important;
  z-index: -1 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

body .p2 .p2-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(50px);
  will-change: transform;
}

body .p2 .p2-orb--g1 { width:780px; height:780px; top:-160px; left:50%; margin-left:-390px; background:radial-gradient(circle,rgba(0,255,92,.10),transparent 66%); animation:p2drift1 26s ease-in-out infinite; }
body .p2 .p2-orb--w1 { width:640px; height:640px; top:8%; left:-160px; background:radial-gradient(circle,rgba(234,234,234,.05),transparent 70%); animation:p2drift2 32s ease-in-out infinite; }
body .p2 .p2-orb--g2 { width:560px; height:560px; top:55%; right:-150px; background:radial-gradient(circle,rgba(0,255,92,.06),transparent 70%); animation:p2drift3 30s ease-in-out infinite; }
body .p2 .p2-orb--g3 { width:600px; height:600px; bottom:-140px; left:-150px; background:radial-gradient(circle,rgba(0,255,92,.055),transparent 70%); animation:p2drift2 34s ease-in-out infinite; }

@keyframes p2drift1 {0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(38px,30px) scale(1.08);}}
@keyframes p2drift2 {0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(60px,-28px) scale(1.1);}}
@keyframes p2drift3 {0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(-48px,22px) scale(1.06);}}

/* ===================== ESTRUTURA BASE ===================== */
body .p2 .p2-container { max-width:1180px; margin:0 auto; padding:0 24px; position:relative; z-index:1; }

body .p2 .p2-tag { 
  display:inline-flex; align-items:center; gap:9px; font-family:var(--p2-mono) !important;
  font-size:12px; letter-spacing:.18em; text-transform:lowercase; color:var(--p2-muted) !important;
  border:1px solid var(--p2-line) !important; border-radius:999px; padding:7px 15px;
  background:rgba(234,234,234,.015) !important; backdrop-filter:blur(2px); 
}
body .p2 .p2-tag::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--p2-green) !important; box-shadow:0 0 9px var(--p2-green); }

/* ===================== HERO ===================== */
body .p2 .p2-hero { position:relative; z-index:1; text-align:center; max-width:1000px; margin:0 auto; padding:clamp(112px,17vh,208px) 24px clamp(70px,9vh,118px); }
body .p2 .p2-hero-title { 
  font-family:var(--p2-serif) !important; font-weight:400 !important; color:var(--p2-fg) !important;
  font-size:clamp(3.68rem, 5.6vw, 7.28rem) !important; line-height:1.06 !important; letter-spacing:-.012em !important;
  margin:30px auto 0 !important; max-width:16ch !important; 
}
body .p2 .p2-accent { color:var(--p2-green) !important; text-shadow:0 0 34px rgba(0,255,92,.28) !important; }
body .p2 .p2-hero-sub { 
  font-family:var(--p2-sans) !important; font-size:clamp(1.6rem, 1.35vw, 1.86rem) !important;
  line-height:1.62 !important; color:var(--p2-muted) !important; max-width:600px !important; margin:26px auto 0 !important; 
}

body .p2 .p2-cta-wrap { margin-top:42px !important; display:flex; flex-direction:column; align-items:center; gap:13px; }
body .p2 .p2-cta-note { font-family:var(--p2-sans) !important; font-size:1.36rem !important; color:var(--p2-muted) !important; }
body .p2 .p2-hero-cred { margin-top:36px !important; font-family:var(--p2-mono) !important; font-size:1.12rem !important; letter-spacing:.14em !important; text-transform:uppercase !important; color:var(--p2-muted) !important; opacity:.85 !important; }

/* ----- BOTÃO RADAR ----- */
body .p2 .p2-btn-radar { 
  position:relative; z-index:0; display:inline-flex; align-items:center;
  justify-content:center; gap:10px; font-family:var(--p2-sans) !important; font-weight:600 !important;
  font-size:1.63rem !important; letter-spacing:.005em !important; color:#0b140e !important; background:var(--p2-fg) !important;
  padding:17px 32px !important; border-radius:999px !important; text-decoration:none !important; cursor:pointer; border:0 !important;
  box-shadow:0 8px 30px rgba(0,0,0,.42), 0 0 22px rgba(0,255,92,.12) !important;
  transition:transform .35s cubic-bezier(.2,.7,.2,1), background .35s, color .35s, box-shadow .45s !important; 
}
body .p2 .p2-btn-radar .p2-arrow { transition:transform .35s cubic-bezier(.2,.7,.2,1); color: inherit !important; }
body .p2 .p2-btn-radar:hover { 
  background:var(--p2-green) !important; color:#06140a !important; transform:translateY(-2px) !important;
  box-shadow:0 12px 38px rgba(0,0,0,.45), 0 0 36px rgba(0,255,92,.5), 0 0 74px rgba(0,255,92,.24) !important; 
}
body .p2 .p2-btn-radar:hover .p2-arrow { transform:translateX(4px) !important; }
body .p2 .p2-btn-radar:active { transform:translateY(0) !important; }
body .p2 .p2-btn-radar:focus-visible { outline:2px solid var(--p2-green) !important; outline-offset:4px !important; }
body .p2 .p2-btn-radar::before, body .p2 .p2-btn-radar::after { 
  content:''; position:absolute; inset:0;
  border-radius:999px; border:1.5px solid var(--p2-green) !important; z-index:-1; opacity:0;
  animation:p2radar 3.4s ease-out infinite; 
}
body .p2 .p2-btn-radar::after { animation-delay:1.7s !important; }
@keyframes p2radar{0%{transform:scale(1);opacity:.32;}80%{opacity:0;}100%{transform:scale(1.5);opacity:0;}}

/* ===================== CASES (DOBRA 2) ===================== */
body .p2 .p2-cases { position:relative; z-index:1; padding:clamp(38px,6vh,76px) 0 clamp(82px,12vh,140px); }
body .p2 .p2-cases-head { text-align:center; }
body .p2 .p2-cases-title { font-family:var(--p2-serif) !important; font-weight:400 !important; color:var(--p2-fg) !important; font-size:clamp(3.04rem, 4.4vw, 5.36rem) !important; line-height:1.1 !important; margin:22px 0 0 !important; }
body .p2 .p2-sur-word { white-space:nowrap; }
body .p2 .p2-sur { 
  position:relative; 
  display:inline-block; 
  font-family:var(--p2-serif) !important;  /* Altera de Caveat para Hedvig Letters Serif */
  font-style:italic !important;             /* Ativa o efeito Itálico */
  font-weight:400 !important;               /* Altera de 700 (negrito) para 400 (fina) */
  font-size:1em !important;                 /* Ajusta o tamanho de 1.16em para 1em para harmonizar com o título */
  color:var(--p2-green) !important; 
  line-height:1 !important; 
  transform:translateY(0.01em); 
  clip-path:inset(0 100% 0 0); 
  text-shadow:0 0 18px rgba(0,255,92,.35); 
  animation:p2write 5.5s cubic-bezier(.6,0,.4,1) infinite; 
}
body .p2 .p2-sur::after { content:''; position:absolute; top:6%; bottom:6%; width:2px; left:0; background:var(--p2-green) !important; box-shadow:0 0 8px var(--p2-green); opacity:0; animation:p2caret 5.5s cubic-bezier(.6,0,.4,1) infinite; }
@keyframes p2write{0%{clip-path:inset(0 100% 0 0);}22%{clip-path:inset(0 0 0 0);}82%{clip-path:inset(0 0 0 0);}90%{clip-path:inset(0 100% 0 0);}100%{clip-path:inset(0 100% 0 0);}}
@keyframes p2caret{0%{left:0;opacity:1;}22%{left:100%;opacity:1;}27%{opacity:0;}100%{opacity:0;}}
body .p2 .p2-cases-sub { font-family:var(--p2-sans) !important; color:var(--p2-muted) !important; margin:16px auto 0 !important; max-width:520px !important; font-size:clamp(1.52rem, 1.2vw, 1.7rem) !important; line-height:1.55 !important; }

body .p2 .p2-carousel { margin-top:clamp(42px,6vh,68px) !important; position:relative; width:100%; overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent); mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent); }
body .p2 .p2-track { display:flex; gap:24px; width:max-content; padding:8px 0; animation:p2scroll 48s linear infinite; will-change:transform; }
body .p2 .p2-carousel:hover .p2-track { animation-play-state:paused; }
@keyframes p2scroll{from{transform:translateX(0);}to{transform:translateX(calc(-1 * var(--p2shift,50%)));}}

body .p2 .p2-case { position:relative; flex:0 0 auto; width:clamp(280px,31vw,410px); aspect-ratio:4/3; border-radius:16px; overflow:hidden; text-decoration:none !important; display:block; border:1px solid var(--p2-line) !important; background:#202325 !important; transition:border-color .5s,box-shadow .5s,transform .5s cubic-bezier(.2,.7,.2,1); }
body .p2 .p2-case:hover { border-color:rgba(0,255,92,.35) !important; transform:translateY(-4px) !important; box-shadow:0 18px 44px rgba(0,0,0,.5),0 0 28px rgba(0,255,92,.1) !important; }
body .p2 .p2-case-img { position:absolute; inset:0; background-size:cover; background-position:center; transition:transform .9s cubic-bezier(.2,.7,.2,1); }
body .p2 .p2-case:hover .p2-case-img { transform:scale(1.08) !important; }
body .p2 .p2-case-arrow { position:absolute; top:15px; right:15px; width:34px; height:34px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:rgba(27,29,31,.6) !important; backdrop-filter:blur(6px); color:var(--p2-fg) !important; font-size:15px !important; border:1px solid var(--p2-line) !important; opacity:0; transform:translateY(-4px); transition:opacity .4s,transform .4s,background .4s,color .4s; }
body .p2 .p2-case:hover .p2-case-arrow { opacity:1 !important; transform:none !important; background:var(--p2-green) !important; color:#06140a !important; border-color:transparent !important; }
body .p2 .p2-case-meta { position:absolute; left:0; right:0; bottom:0; padding:18px 18px 16px; display:flex; justify-content:space-between; align-items:flex-end; gap:10px; background:linear-gradient(transparent,rgba(10,11,12,.82)) !important; opacity:0; transform:translateY(10px); transition:opacity .5s,transform .5s; }
body .p2 .p2-case:hover .p2-case-meta { opacity:1 !important; transform:none !important; }
body .p2 .p2-case-name { font-family:var(--p2-sans) !important; font-weight:600 !important; color:var(--p2-fg) !important; font-size:1.6rem !important; }
body .p2 .p2-case-cat { font-family:var(--p2-mono) !important; font-size:1.05rem !important; letter-spacing:.1em !important; text-transform:uppercase !important; color:var(--p2-green) !important; white-space:nowrap; }

/* ===================== REVEAL ON SCROLL ===================== */
body .p2 .p2-reveal { opacity:0; transform:translateY(28px); transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1); }
body .p2 .p2-reveal.is-visible { opacity:1 !important; transform:none !important; }

/* ===================== ENTRADA (LOAD) ===================== */
@keyframes p2fadeUp {from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:none;}}
body .p2 .p2-anim { opacity:0; animation:p2fadeUp .9s cubic-bezier(.2,.7,.2,1) forwards; }
body .p2 .p2-d1 { animation-delay:.05s !important; }
body .p2 .p2-d2 { animation-delay:.18s !important; }
body .p2 .p2-d3 { animation-delay:.32s !important; }
body .p2 .p2-d4 { animation-delay:.46s !important; }
body .p2 .p2-d5 { animation-delay:.6s !important; }

/* ===================== SEÇÃO (base) ===================== */
body .p2 .p2-section { position:relative; z-index:1; padding:clamp(72px,11vh,126px) 0; }
body .p2 .p2-section-head { text-align:center; max-width:720px; margin:0 auto; }

/* ---- BLOCO 3 — DOR ---- */
body .p2 .p2-pain-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:clamp(30px,5vw,72px); align-items:start; }
body .p2 .p2-pain-title { font-family:var(--p2-serif) !important; font-weight:400 !important; font-size:clamp(2.72rem, 3.3vw, 4.32rem) !important; line-height:1.16 !important; letter-spacing:-.01em !important; color:var(--p2-fg) !important; margin-top:20px !important; max-width:14ch !important; }
body .p2 .p2-pain-body { font-family:var(--p2-sans) !important; color:var(--p2-muted) !important; font-size:clamp(1.6rem, 1.2vw, 1.79rem) !important; line-height:1.72 !important; }
body .p2 .p2-pain-body p+p { margin-top:16px !important; }
body .p2 .p2-em { color:var(--p2-fg) !important; font-weight:500 !important; }
body .p2 .p2-triplet { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px !important; }
body .p2 .p2-triplet span { font-family:var(--p2-mono) !important; font-size:1.25rem !important; letter-spacing:.03em !important; padding:9px 15px; border:1px solid var(--p2-line) !important; border-radius:9px !important; color:var(--p2-muted) !important; background:rgba(234,234,234,.012) !important; }
body .p2 .p2-triplet span:last-child { color:var(--p2-red) !important; border-color:rgba(222,58,79,.38) !important; background:rgba(222,58,79,.05) !important; }

/* ---- BLOCO 4 — SOLUÇÃO ---- */
body .p2 .p2-sol-title { font-family:var(--p2-serif) !important; font-weight:400 !important; font-size:clamp(2.96rem, 3.5vw, 4.56rem) !important; line-height:1.14 !important; letter-spacing:-.01em !important; color:var(--p2-fg) !important; margin-top:20px !important; }
body .p2 .p2-sol-body { font-family:var(--p2-sans) !important; color:var(--p2-muted) !important; font-size:clamp(1.6rem, 1.2vw, 1.79rem) !important; line-height:1.7 !important; max-width:680px !important; margin:20px auto 0 !important; }
body .p2 .p2-sol-label { font-family:var(--p2-mono) !important; font-size:1.15rem !important; letter-spacing:.16em !important; text-transform:uppercase !important; color:var(--p2-green) !important; margin-top:clamp(38px,5vh,56px) !important; }
body .p2 .p2-results { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:22px !important; }
body .p2 .p2-result { border:1px solid var(--p2-line) !important; border-radius:16px !important; padding:26px 22px; text-align:left; background:rgba(234,234,234,.014) !important; transition:border-color .5s,transform .5s,box-shadow .5s; }
body .p2 .p2-result:hover { border-color:rgba(0,255,92,.28) !important; transform:translateY(-4px) !important; box-shadow:0 16px 40px rgba(0,0,0,.4) !important; }
body .p2 .p2-result-icon { width:36px; height:36px; border-radius:9px !important; display:flex; align-items:center; justify-content:center; background:rgba(0,255,92,.1) !important; color:var(--p2-green) !important; font-size:17px !important; margin-bottom:16px !important; }
body .p2 .p2-result-t { font-family:var(--p2-serif) !important; font-size:1.88rem !important; color:var(--p2-fg) !important; margin-bottom:7px !important; }
body .p2 .p2-result-d { font-family:var(--p2-sans) !important; font-size:1.5rem !important; color:var(--p2-muted) !important; line-height:1.55 !important; }

/* ---- BLOCO 5 — ENTREGAS ---- */
body .p2 .p2-deliver-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; margin-top:clamp(40px,5vh,60px) !important; }
body .p2 .p2-deliver { position:relative; border:1px solid var(--p2-line) !important; border-radius:18px !important; padding:30px 28px; background:rgba(234,234,234,.014) !important; transition:border-color .5s,transform .5s,box-shadow .5s; }
body .p2 .p2-deliver:hover { border-color:rgba(0,255,92,.26) !important; transform:translateY(-4px) !important; box-shadow:0 18px 44px rgba(0,0,0,.42) !important; }
body .p2 .p2-deliver-num { font-family:var(--p2-mono) !important; font-size:1.25rem !important; letter-spacing:.1em !important; color:var(--p2-green) !important; }
body .p2 .p2-deliver-name { font-family:var(--p2-serif) !important; font-size:clamp(2rem, 1.8vw, 2.4rem) !important; color:var(--p2-fg) !important; margin:10px 0 12px !important; }
body .p2 .p2-deliver-desc { font-family:var(--p2-sans) !important; font-size:1.57rem !important; color:var(--p2-muted) !important; line-height:1.62 !important; }
body .p2 .p2-deliver-benefit { display:flex; gap:10px; align-items:flex-start; margin-top:18px !important; padding-top:16px !important; border-top:1px solid var(--p2-line) !important; font-family:var(--p2-sans) !important; font-size:1.52rem !important; color:var(--p2-fg) !important; line-height:1.5 !important; }
body .p2 .p2-deliver-benefit::before { content:'→'; color:var(--p2-green) !important; flex:0 0 auto; font-weight:600 !important; }

/* ---- BLOCO 6 — LOGOS ---- */
body .p2 .p2-logos { position:relative; z-index:1; padding:clamp(54px,8vh,90px) 0; }
body .p2 .p2-logos-label { text-align:center; font-family:var(--p2-mono) !important; font-size:1.15rem !important; letter-spacing:.16em !important; text-transform:uppercase !important; color:var(--p2-muted) !important; }
body .p2 .p2-logos-marquee { margin-top:30px !important; overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
body .p2 .p2-logos-track { gap:clamp(44px,6vw,84px)!important; align-items:center; }
body .p2 .p2-logo { height:36px; display:flex; align-items:center; justify-content:center; opacity:.55; transition:opacity .4s; flex:0 0 auto; }
body .p2 .p2-logo:hover { opacity:1 !important; }
body .p2 .p2-logo img { height:100% !important; width:auto !important; display:block; }
body .p2 .p2-logo-ph { height:36px; min-width:120px; border:1px dashed var(--p2-line) !important; border-radius:8px !important; display:flex; align-items:center; justify-content:center; padding:0 18px; font-family:var(--p2-mono) !important; font-size:1.09rem !important; letter-spacing:.1em !important; color:var(--p2-muted) !important; text-transform:uppercase !important; }

/* ---- BLOCO 7 — TABELA COMPARATIVA ---- */
body .p2 .p2-compare-sub { font-family:var(--p2-sans) !important; color:var(--p2-muted) !important; margin:14px auto 0 !important; max-width:540px !important; font-size:clamp(1.52rem, 1.2vw, 1.7rem) !important; line-height:1.55 !important; }
body .p2 .p2-table { display:grid; grid-template-columns:.85fr 1.15fr 1fr; margin-top:clamp(40px,5vh,60px) !important; border:1px solid var(--p2-line) !important; border-radius:18px !important; overflow:hidden; background:rgba(234,234,234,.012) !important; }
body .p2 .p2-th { padding:20px; font-family:var(--p2-serif) !important; font-size:1.86rem !important; display:flex; align-items:center; gap:10px; border-bottom:1px solid var(--p2-line) !important; }
body .p2 .p2-th-brand { color:var(--p2-fg) !important; background:linear-gradient(rgba(0,255,92,.09),rgba(0,255,92,.03)) !important; }
body .p2 .p2-th-logo { color:var(--p2-muted) !important; }
body .p2 .p2-badge { font-family:var(--p2-mono) !important; font-size:0.96rem !important; letter-spacing:.1em !important; text-transform:uppercase !important; color:#06140a !important; background:var(--p2-green) !important; padding:4px 8px; border-radius:6px !important; }
body .p2 .p2-td { padding:18px 20px; border-bottom:1px solid var(--p2-line) !important; font-family:var(--p2-sans) !important; font-size:1.54rem !important; line-height:1.55 !important; }
body .p2 .p2-col-label { font-family:var(--p2-mono) !important; font-size:1.15rem !important; letter-spacing:.05em !important; text-transform:uppercase !important; color:var(--p2-muted) !important; display:flex; align-items:center; }
body .p2 .p2-col-brand { color:var(--p2-fg) !important; background:linear-gradient(rgba(0,255,92,.045),rgba(0,255,92,.02)) !important; box-shadow:inset 1px 0 0 rgba(0,255,92,.18),inset -1px 0 0 rgba(0,255,92,.18) !important; }
body .p2 .p2-col-logo { color:var(--p2-muted) !important; }
body .p2 .p2-table>div:nth-last-child(-n+3){border-bottom:0 !important;}

body .p2 .p2-track--rev{animation-name:p2scroll-rev;}

/* ---- BLOCO 8 — QUEM SOMOS ---- */
body .p2 .p2-about-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(32px,5vw,64px); align-items:center; }
body .p2 .p2-about-title { font-family:var(--p2-serif) !important; font-weight:400 !important; font-size:clamp(2.72rem, 3.2vw, 4.16rem) !important; line-height:1.16 !important; letter-spacing:-.01em !important; color:var(--p2-fg) !important; margin-top:20px !important; }
body .p2 .p2-about-body { font-family:var(--p2-sans) !important; color:var(--p2-muted) !important; font-size:clamp(1.6rem, 1.2vw, 1.79rem) !important; line-height:1.72 !important; margin-top:18px !important; }
body .p2 .p2-about-media { position:relative; aspect-ratio:4/5; border-radius:20px !important; overflow:hidden; border:1px solid var(--p2-line) !important; background:linear-gradient(150deg,#23272a,#191b1d) !important; box-shadow:0 24px 60px rgba(0,0,0,.45) !important; }
body .p2 .p2-about-media img { width:100% !important; height:100% !important; object-fit:cover; display:block; }
body .p2 .p2-about-ph { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-family:var(--p2-mono) !important; font-size:1.15rem !important; letter-spacing:.1em !important; color:var(--p2-muted) !important; text-transform:uppercase !important; text-align:center; line-height:1.8 !important; padding:24px; }
body .p2 .p2-about-chip { position:absolute; left:16px; bottom:16px; font-family:var(--p2-mono) !important; font-size:1.02rem !important; letter-spacing:.06em !important; text-transform:uppercase !important; color:var(--p2-fg) !important; background:rgba(27,29,31,.72) !important; backdrop-filter:blur(6px); border:1px solid var(--p2-line) !important; border-radius:999px !important; padding:7px 13px; }

/* ---- BLOCO 9 — OFERTA ---- */
body .p2 .p2-offer-card { position:relative; max-width:880px; margin:0 auto; border:1px solid rgba(0,255,92,.2) !important; border-radius:24px !important; padding:clamp(32px,5vw,58px); text-align:center; background:radial-gradient(120% 100% at 50% 0,rgba(0,255,92,.06),transparent 58%),rgba(234,234,234,.015) !important; box-shadow:0 30px 80px rgba(0,0,0,.42) !important; }
body .p2 .p2-offer-title { font-family:var(--p2-serif) !important; font-weight:400 !important; font-size:clamp(2.72rem, 3.2vw, 4.08rem) !important; line-height:1.14 !important; letter-spacing:-.01em !important; color:var(--p2-fg) !important; margin-top:18px !important; }
body .p2 .p2-offer-body { font-family:var(--p2-sans) !important; color:var(--p2-muted) !important; font-size:clamp(1.6rem, 1.2vw, 1.79rem) !important; line-height:1.7 !important; max-width:640px !important; margin:18px auto 0 !important; }
body .p2 .p2-offer-list { display:grid; grid-template-columns:repeat(2,1fr); gap:14px 22px; max-width:700px; margin:clamp(28px,4vh,40px) auto 0 !important; text-align:left; }
body .p2 .p2-offer-li { display:flex; gap:12px; align-items:flex-start; font-family:var(--p2-sans) !important; font-size:1.57rem !important; color:var(--p2-fg) !important; line-height:1.5 !important; }
body .p2 .p2-offer-li::before { content:'✓'; flex:0 0 auto; color:var(--p2-green) !important; font-weight:700 !important; font-size:12px !important; background:rgba(0,255,92,.12) !important; width:22px; height:22px; border-radius:50% !important; display:flex; align-items:center; justify-content:center; margin-top:1px !important; }
body .p2 .p2-offer-highlight { margin:clamp(28px,4vh,38px) auto 0 !important; max-width:700px; text-align:left; border:1px solid var(--p2-line) !important; border-left:3px solid var(--p2-green) !important; border-radius:12px !important; padding:18px 22px; background:rgba(27,29,31,.55) !important; box-shadow:0 14px 40px rgba(0,0,0,.32) !important; font-family:var(--p2-sans) !important; font-size:1.54rem !important; color:var(--p2-muted) !important; line-height:1.62 !important; }
body .p2 .p2-offer-cta { margin-top:clamp(30px,4vh,40px) !important; display:flex; flex-direction:column; align-items:center; gap:13px; }

/* ---- BLOCO 10 — FAQ ---- */
body .p2 .p2-faq { max-width:820px; margin:clamp(36px,5vh,52px) auto 0 !important; }
body .p2 .p2-faq-item { border:1px solid var(--p2-line) !important; border-radius:14px !important; margin-bottom:12px !important; background:rgba(234,234,234,.012) !important; transition:border-color .4s,background .4s; }
body .p2 .p2-faq-item.is-open { border-color:rgba(0,255,92,.25) !important; background:rgba(0,255,92,.02) !important; }
body .p2 .p2-faq-q { width:100% !important; text-align:left; background:none !important; border:0 !important; cursor:pointer; padding:19px 22px; display:flex; justify-content:space-between; align-items:center; gap:16px; font-family:var(--p2-sans) !important; font-size:clamp(1.6rem, 1.3vw, 1.76rem) !important; font-weight:500 !important; color:var(--p2-fg) !important; white-space:normal !important; }
body .p2 .p2-faq-q > span:first-child { flex: 1 !important; text-align: left !important; }
body .p2 .p2-faq-q:focus-visible { outline:2px solid var(--p2-green) !important; outline-offset:2px !important; border-radius:12px !important; }
body .p2 .p2-faq-icon { flex:0 0 auto; width:20px; height:20px; position:relative; }
body .p2 .p2-faq-icon::before, body .p2 .p2-faq-icon::after { content:''; position:absolute; background:var(--p2-green) !important; border-radius:2px !important; }
body .p2 .p2-faq-icon::before { top:50%; left:0; right:0; height:2px; margin-top:-1px; }
body .p2 .p2-faq-icon::after { left:50%; top:0; bottom:0; width:2px; margin-left:-1px; transition:transform .4s ease; }
body .p2 .p2-faq-item.is-open .p2-faq-icon::after { transform:scaleY(0) !important; }
body .p2 .p2-faq-a { display:grid; grid-template-rows:0fr; transition:grid-template-rows .42s ease; }
body .p2 .p2-faq-item.is-open .p2-faq-a { grid-template-rows:1fr !important; }
body .p2 .p2-faq-a-inner { overflow:hidden; }
body .p2 .p2-faq-a p { padding:0 22px 22px !important; font-family:var(--p2-sans) !important; color:var(--p2-muted) !important; line-height:1.66 !important; font-size:1.57rem !important; }

/* ---- BLOCO 11 — CTA FINAL ---- */
body .p2 .p2-final { position:relative; z-index:1; text-align:center; padding:clamp(90px,14vh,160px) 24px; }
body .p2 .p2-final-glow { position:absolute; left:50%; top:50%; width:700px; height:420px; transform:translate(-50%,-50%); background:radial-gradient(circle,rgba(0,255,92,.08),transparent 64%); pointer-events:none; z-index:-1; }
body .p2 .p2-final-title { font-family:var(--p2-serif) !important; font-weight:400 !important; font-size:clamp(3.2rem, 4.6vw, 5.68rem) !important; line-height:1.08 !important; letter-spacing:-.015em !important; color:var(--p2-fg) !important; max-width:16ch !important; margin:0 auto !important; }
body .p2 .p2-final-cta { margin-top:38px !important; display:flex; flex-direction:column; align-items:center; gap:13px; }

/* ---- RODAPÉ ---- */
body .p2 .p2-footer { position:relative; z-index:1; border-top:1px solid var(--p2-line) !important; padding:46px 0 56px; }
body .p2 .p2-footer-grid { display:flex; flex-wrap:wrap; justify-content:space-between; gap:22px; align-items:center; }
body .p2 .p2-footer-brand { font-family:var(--p2-serif) !important; font-size:2.08rem !important; color:var(--p2-fg) !important; }
body .p2 .p2-footer-links { display:flex; flex-wrap:wrap; gap:22px; font-family:var(--p2-sans) !important; font-size:1.47rem !important; }
body .p2 .p2-footer-links a { color:var(--p2-muted) !important; text-decoration:none !important; transition:color .3s; }
body .p2 .p2-footer-links a:hover { color:var(--p2-green) !important; }
body .p2 .p2-footer-meta { margin-top:26px !important; font-family:var(--p2-mono) !important; font-size:1.12rem !important; letter-spacing:.05em !important; color:var(--p2-muted) !important; opacity:.7 !important; line-height:1.8 !important; }

/* ---- BOTÃO FLUTUANTE (fixo) ---- */
body .p2-float { position:fixed; right:22px; bottom:22px; z-index:9999; display:inline-flex; align-items:center; gap:11px; font-family:var(--p2-sans) !important; font-weight:600 !important; font-size:1.52rem !important; color:#06140a !important; background:var(--p2-green) !important; padding:14px 21px !important; border-radius:999px !important; text-decoration:none !important; cursor:pointer; box-shadow:0 10px 30px rgba(0,0,0,.4),0 0 26px rgba(0,255,92,.4) !important; opacity:0; transform:translateY(20px) scale(.96); pointer-events:none; transition:opacity .5s,transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .4s; }
body .p2-float.is-visible { opacity:1 !important; transform:none !important; pointer-events:auto !important; }
body .p2-float:hover { transform:translateY(-2px) !important; box-shadow:0 14px 38px rgba(0,0,0,.45),0 0 38px rgba(0,255,92,.6) !important; }
body .p2-float:focus-visible { outline:2px solid #fff !important; outline-offset:3px !important; }
body .p2-float-dot { width:9px; height:9px; border-radius:50% !important; background:#06140a !important; position:relative; }
body .p2-float-dot::after { content:''; position:absolute; inset:-4px; border-radius:50%; border:2px solid rgba(6,20,10,.45); animation:p2radar 2.4s ease-out infinite; }

/* ===================== PATCH MODULAR & RESPONSIVOS ===================== */
body .p2 { overflow:visible !important; }
body .p2-ambient { position:relative; z-index:0; height:0; }
body .p2-fog { z-index:-1 !important; }
body .p2 .p2-hero, body .p2 .p2-section, body .p2 .p2-cases, body .p2 .p2-logos, body .p2 .p2-final, body .p2 .p2-footer { position:relative; z-index:1; }
body .p2-carousel, body .p2-logos-marquee { max-width:100vw !important; }

@media (max-width:820px){
  body .p2 .p2-pain-grid{grid-template-columns:1fr;gap:18px;}
  body .p2 .p2-pain-title{max-width:none !important;}
  body .p2 .p2-results{grid-template-columns:1fr;}
  body .p2 .p2-deliver-grid{grid-template-columns:1fr;}
  body .p2 .p2-about-grid{grid-template-columns:1fr;}
  body .p2 .p2-about-media{width:100%;max-width:420px;margin:0 auto;}
  body .p2 .p2-offer-list{grid-template-columns:1fr;}
}
@media (max-width:720px){
  body .p2 .p2-table{grid-template-columns:1fr;border-radius:14px !important;}
  body .p2 .p2-th{display:none !important;}
  body .p2 .p2-col-label{background:rgba(234,234,234,.03) !important;color:var(--p2-fg) !important;font-size:1.25rem !important;}
  body .p2 .p2-col-brand{box-shadow:none !important;}
  body .p2 .p2-col-brand::before{content:'Branding Design';display:block;font-family:var(--p2-mono) !important; font-size:0.99rem !important;letter-spacing:.12em !important;text-transform:uppercase !important;color:var(--p2-green) !important;margin-bottom:6px !important;}
  body .p2 .p2-col-logo::before{content:'Logo';display:block;font-family:var(--p2-mono) !important; font-size:0.99rem !important;letter-spacing:.12em !important;text-transform:uppercase !important;color:var(--p2-muted) !important;margin-bottom:6px !important;}
  body .p2 .p2-table>div:nth-last-child(-n+3){border-bottom:1px solid var(--p2-line) !important;}
  body .p2 .p2-table>div:last-child{border-bottom:0 !important;}
}
@media (max-width:640px){
  body .p2 .p2-hero{padding-top:96px !important;}
  body .p2 .p2-hero-title{max-width:18ch !important;}
  body .p2 .p2-case{width:80vw !important;}
  body .p2 .p2-carousel{-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);}
  body .p2 .p2-btn-radar{width:100% !important;max-width:340px !important;}
}
@media (max-width:480px){
  body .p2-float{right:14px !important;bottom:14px !important;padding:12px 17px !important;font-size:1.4rem !important;}
  body .p2 .p2-footer-grid{flex-direction:column;align-items:flex-start;}
}
@media (prefers-reduced-motion:reduce){
  body .p2 *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition:none!important;}
  body .p2 .p2-anim, body .p2 .p2-reveal{opacity:1!important;transform:none!important;}
  body .p2 .p2-track{animation:none!important;}
  body .p2 .p2-sur{clip-path:none!important;}
  body .p2 .p2-sur::after{display:none !important;}
}

/* ==========================================================================
   AJUSTE DE MOVIMENTAÇÃO E PROPORÇÃO - FAIXA DE LOGOS (BLOCO 6)
   ========================================================================== */

/* 1. Declaração das animações infinitas que estavam faltando no CSS */
@keyframes p2scroll {
  from { transform: translateX(0); }
  to { transform: translateX(calc(-1 * var(--p2shift, 50%))); }
}
@keyframes p2scroll-rev {
  from { transform: translateX(calc(-1 * var(--p2shift, 50%))); }
  to { transform: translateX(0); }
}

/* 2. Aplica a movimentação contínua padrão na faixa de logos */
body .p2 .p2-logos-marquee .p2-track {
  display: flex;
  gap: clamp(40px, 5vw, 70px) !important;
  width: max-content;
  animation-name: p2scroll;
  animation-duration: 48s; /* Tempo de fallback caso o JS demore a carregar */
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  will-change: transform;
}

/* 3. Garante que a rotação reversa da faixa de logos funcione sem travar */
body .p2 .p2-logos-marquee .p2-track--rev {
  animation-name: p2scroll-rev;
}

/* 4. Pausa de forma suave ao passar o mouse por cima (hover) */
body .p2 .p2-logos-marquee:hover .p2-track {
  animation-play-state: paused !important;
}

/* 5. Caixa delimitadora para equilibrar logos verticais, redondos e horizontais */
body .p2 .p2-logo {
  height: 48px !important;       /* Aumentado de 36px para 48px para dar espaço a marcas verticais/redondas */
  width: 140px !important;       /* Largura limite para marcas horizontais longas */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: .55;
  transition: opacity .4s;
  flex: 0 0 auto !important;
}

body .p2 .p2-logo:hover {
  opacity: 1 !important;
}

/* 6. Ajuste inteligente do comportamento da imagem dentro do box */
body .p2 .p2-logo img {
  max-height: 100% !important;   /* Ocupa no máximo a altura de 48px */
  max-width: 100% !important;    /* Ocupa no máximo a largura de 140px */
  height: auto !important;
  width: auto !important;
  display: block !important;
  object-fit: contain !important; /* Preserva a proporção original do logo sem cortar */
}



/* ==========================================================================
   CSS — OUTROS SERVIÇOS (CARROSSEL) - ESCALA 1.6x CORRIGIDA E ADAPTADA
   ========================================================================== */

body .p2 .p2-services {
  position: relative;
  z-index: 1;
  padding: clamp(72px, 11vh, 126px) 0 !important;
}

body .p2 .p2-services-head {
  text-align: center;
}

/* Redimensionado de clamp(1.9rem, 4.4vw, 3.35rem) para clamp(3.04rem, 4.4vw, 5.36rem) */
body .p2 .p2-services-title {
  font-family: var(--p2-serif) !important;
  font-weight: 400 !important;
  color: var(--p2-fg) !important;
  font-size: clamp(3.04rem, 4.4vw, 5.36rem) !important;
  line-height: 1.1 !important;
  margin: 22px 0 0 !important;
}

/* Redimensionado de clamp(.95rem, 1.2vw, 1.06rem) para clamp(1.52rem, 1.2vw, 1.7rem) */
body .p2 .p2-services-sub {
  font-family: var(--p2-sans) !important;
  color: var(--p2-muted) !important;
  margin: 16px auto 0 !important;
  max-width: 520px !important;
  font-size: clamp(1.52rem, 1.2vw, 1.7rem) !important;
  line-height: 1.55 !important;
}

body .p2 .p2-services-carousel {
  margin-top: clamp(34px, 5vh, 58px) !important;
  padding: 24px 0 60px !important;
  position: relative;
  z-index: 2;
}

body .p2 .p2-svc {
  position: relative;
  flex: 0 0 auto !important;
  width: clamp(280px, 30vw, 420px) !important;
  display: flex !important;
  flex-direction: column !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  background: #202325 !important;
  border: 1px solid var(--p2-line) !important;
  transition: border-color .5s, transform .5s cubic-bezier(.2,.7,.2,1), box-shadow .5s !important;
}

body .p2 .p2-svc:hover {
  border-color: rgba(234, 234, 234, .16) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 20px 48px rgba(0,0,0,.5), 0 0 30px rgba(0,255,92,.14) !important;
}

/* Feixe verde suave que percorre todo o card no hover */
body .p2 .p2-svc::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(115deg, transparent 34%, rgba(0,255,92,.10) 46%, rgba(0,255,92,.22) 50%, rgba(0,255,92,.10) 54%, transparent 66%) !important;
  transform: translateX(-130%);
  opacity: 0;
  transition: transform 1s cubic-bezier(.2,.7,.2,1), opacity .45s ease;
}

body .p2 .p2-svc:hover::after {
  transform: translateX(130%) !important;
  opacity: 1 !important;
}

body .p2 .p2-svc-img {
  width: 100% !important;
  aspect-ratio: 5/6 !important;
  background-size: cover !important;
  background-position: center !important;
  transition: transform .9s cubic-bezier(.2,.7,.2,1) !important;
}

body .p2 .p2-svc:hover .p2-svc-img {
  transform: scale(1.05) !important;
}

body .p2 .p2-svc-foot {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 26px 28px !important;
  background: rgba(234, 234, 234, .03) !important;
}

body .p2 .p2-svc-txt {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
}

/* Redimensionado de 1.5rem para 2.4rem */
body .p2 .p2-svc-name {
  font-family: var(--p2-serif) !important;
  font-size: 2.4rem !important;
  color: var(--p2-fg) !important;
  line-height: 1.2 !important;
}

/* Redimensionado de 0.72rem para 1.15rem */
body .p2 .p2-svc-sub {
  font-family: var(--p2-mono) !important;
  font-size: 1.15rem !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  color: var(--p2-muted) !important;
}

body .p2 .p2-svc-ic {
  width: 24px !important;
  height: 24px !important;
  flex: 0 0 auto !important;
  color: var(--p2-muted) !important;
  transition: color .4s, transform .4s !important;
}

body .p2 .p2-svc:hover .p2-svc-ic {
  color: var(--p2-green) !important;
  transform: translateX(3px) !important;
}

/* Responsivo para celular */
@media(max-width:600px){
  body .p2 .p2-svc {
    width: 78vw !important;
  }
  /* Redimensionado de 1.3rem para 2.08rem */
  body .p2 .p2-svc-name {
    font-size: 2.08rem !important;
  }
  body .p2 .p2-svc-foot {
    padding: 22px 22px !important;
  }
}/* End custom CSS */