.elementor-9 .elementor-element.elementor-element-7bfb54c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;width:100%;max-width:100%;grid-column:span custom;grid-row:span custom;}.elementor-9 .elementor-element.elementor-element-7bfb54c.elementor-element{--align-self:center;}.elementor-9 .elementor-element.elementor-element-41ebad2{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;grid-column:span custom;grid-row:span custom;}.elementor-9 .elementor-element.elementor-element-41ebad2.elementor-element{--align-self:center;--order:99999 /* order end hack */;--flex-grow:1;--flex-shrink:0;}.elementor-9 .elementor-element.elementor-element-50ecb50{margin:-28px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-9 .elementor-element.elementor-element-c6ab51f{margin:-20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}/* Start custom CSS for html, class: .elementor-element-7bfb54c */.hero-texto h1 span{
  background: linear-gradient(
    90deg,
    #00a83f,
    #6dff9a,
    #00a83f,
    #b8ffd0
  );

  background-size:300% auto;

  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;

  animation:textGlow 4s linear infinite;
}

@keyframes textGlow{
  0%{
    background-position:0%;
  }

  100%{
    background-position:300%;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7bfb54c */.floating-result{
  position:absolute;

  right:8%;
  bottom:8%;

  z-index:50;

  padding:25px 35px;

  border-radius:25px;

  background:
  rgba(0,45,26,.85);

  backdrop-filter:blur(15px);

  color:white;

  box-shadow:
  0 25px 70px rgba(0,0,0,.25);

  animation:floatCard 4s ease-in-out infinite;
}

.floating-result b{
  display:block;
  font-size:34px;
}

.floating-result span{
  display:block;
  margin-top:8px;

  color:#7cffab;

  font-size:34px;
  font-weight:900;
}

@keyframes floatCard{
  50%{
      transform:translateY(-12px);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-41ebad2 */.oc-form-section{
  width:100vw;
  margin-left:calc(50% - 50vw);
  padding:120px 20px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-50ecb50 */<style>
.oc-sobre-editorial,
.oc-sobre-editorial *{
  box-sizing:border-box;
}

.oc-sobre-editorial{
  width:100vw;
  margin-left:calc(50% - 50vw);
  position:relative;
  overflow:hidden;
  padding:120px 5%;
  font-family:Inter,Arial,sans-serif;
  background:linear-gradient(135deg,#ffffff 0%,#fbfdfb 55%,#f5faf7 100%);
}

.oc-bg-glow{
  position:absolute;
  right:-150px;
  top:-80px;
  width:800px;
  height:800px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(63,221,101,.25),rgba(63,221,101,.08),transparent 70%);
  filter:blur(50px);
  animation:glowMove 10s ease-in-out infinite alternate;
  z-index:0;
}

.oc-bg-circle{
  position:absolute;
  right:8%;
  top:90px;
  width:900px;
  height:900px;
  border-radius:50%;
  border:2px solid rgba(0,180,75,.08);
  z-index:0;
}

.oc-bg-circle-2{
  position:absolute;
  right:12%;
  top:140px;
  width:760px;
  height:760px;
  border-radius:50%;
  border:1px dashed rgba(0,180,75,.12);
  z-index:0;
}

.oc-bg-shine{
  position:absolute;
  inset:-40%;
  background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.8) 50%,transparent 65%);
  animation:shineMove 12s linear infinite;
  z-index:0;
}

.oc-sobre-bg-dots{
  position:absolute;
  inset:0;
  background-image:radial-gradient(rgba(0,143,58,.20) 1.5px, transparent 1.5px);
  background-size:22px 22px;
  opacity:.18;
  mask-image:linear-gradient(90deg,#000 0%,transparent 35%,transparent 70%,#000 100%);
  pointer-events:none;
}

.oc-sobre-wrap{
  max-width:1580px;
  margin:0 auto;
  display:grid;
  grid-template-columns:.82fr 1.35fr;
  gap:48px;
  align-items:center;
  position:relative;
  z-index:2;
}

.oc-sobre-pill{
  display:inline-flex;
  align-items:center;
  gap:14px;
  padding:12px 26px 12px 12px;
  border-radius:999px;
  background:#eaf4ec;
  color:#2f8645;
  font-size:14px;
  font-weight:800;
  letter-spacing:.5px;
  margin-bottom:42px;
}

.oc-sobre-pill span{
  width:42px;
  height:42px;
  border-radius:50%;
  background:#fff;
  display:grid;
  place-items:center;
  box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.oc-sobre-unidade{
  display:flex;
  align-items:center;
  gap:22px;
  color:#2f8645;
  font-size:15px;
  font-weight:850;
  letter-spacing:.8px;
  margin-bottom:20px;
}

.oc-sobre-unidade i{
  width:52px;
  height:2px;
  background:#2f8645;
  display:block;
}

.oc-sobre-copy h2{
  margin:0;
  color:#083428;
  font-size:clamp(34px,3.6vw,58px);
  line-height:1.05;
  font-weight:650;
  letter-spacing:-1.8px;
}

.oc-sobre-copy h2 em{
  display:block;
  color:#3e8d4f;
  font-family:Georgia,serif;
  font-size:.92em;
  font-weight:400;
  font-style:italic;
  letter-spacing:-1px;
  margin-top:8px;
}

.oc-sobre-copy p{
  max-width:560px;
  margin:30px 0 38px;
  color:#68756f;
  font-size:18px;
  line-height:1.75;
}

.oc-sobre-beneficios{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px 34px;
  margin-bottom:42px;
}

.oc-sobre-beneficios div{
  display:grid;
  grid-template-columns:58px 1fr;
  column-gap:18px;
  align-items:start;
}

.oc-sobre-beneficios span{
  grid-row:1 / 3;
  width:54px;
  height:54px;
  border-radius:50%;
  background:#eef7f0;
  color:#348a48;
  display:grid;
  place-items:center;
  font-size:26px;
  box-shadow:0 12px 28px rgba(0,0,0,.08);
}

.oc-sobre-beneficios strong{
  color:#0b3a2b;
  font-size:17px;
  line-height:1.2;
  margin-bottom:6px;
}

.oc-sobre-beneficios small{
  color:#6f7b76;
  font-size:14px;
  line-height:1.45;
}

.oc-sobre-whats{
  display:inline-flex;
  align-items:center;
  gap:18px;
  padding:18px 30px;
  border-radius:999px;
  background:linear-gradient(135deg,#006d30,#00a83f,#54d86f);
  background-size:300%;
  color:#fff!important;
  text-decoration:none!important;
  box-shadow:0 25px 60px rgba(0,168,63,.28);
  animation:gradientMove 6s infinite;
}

.oc-icon{
  width:52px;
  height:52px;
  border-radius:50%;
  background:rgba(255,255,255,.18);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
}

.oc-sobre-whats small{
  display:block;
  font-size:11px;
  letter-spacing:2px;
  opacity:.8;
}

.oc-sobre-whats strong{
  font-size:18px;
}

.oc-sobre-media{
  display:grid;
  grid-template-columns:1.2fr .85fr;
  gap:18px;
  align-items:stretch;
}

.oc-foto-principal{
  min-height:760px;
  overflow:hidden;
  border-radius:130px 40px 40px 40px;
  background:#fff;
  box-shadow:0 40px 100px rgba(0,0,0,.12);
  position:relative;
}

.oc-foto-principal img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.oc-media-lateral{
  display:grid;
  gap:18px;
}

.oc-video-lateral,
.oc-foto-lateral{
  height:370px;
  border-radius:30px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 25px 70px rgba(0,0,0,.10);
  transition:.5s;
}

.oc-video-lateral:hover,
.oc-foto-lateral:hover{
  transform:translateY(-8px);
}

.oc-video-lateral iframe{
  width:100%;
  height:100%;
  border:0;
}

.oc-foto-lateral img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

@keyframes glowMove{
  from{transform:scale(1);}
  to{transform:scale(1.15);}
}

@keyframes shineMove{
  from{transform:translateX(-60%) rotate(15deg);}
  to{transform:translateX(60%) rotate(15deg);}
}

@keyframes gradientMove{
  0%{background-position:0%;}
  50%{background-position:100%;}
  100%{background-position:0%;}
}

@media(max-width:1050px){
  .oc-sobre-wrap{
    grid-template-columns:1fr;
  }

  .oc-sobre-media{
    grid-template-columns:1fr;
  }

  .oc-foto-principal{
    min-height:520px;
  }

  .oc-sobre-beneficios{
    grid-template-columns:1fr;
  }
}
</style>/* End custom CSS */