@import url(https://fonts.googleapis.com/css2?family=Onest:wght@100..900&display=swap);
@charset "UTF-8";
:root {
  --size: 375;
}

@media (min-width: 650px) {
  :root {
    --size: 1440;
  }
}
@font-face {
  font-family: "Cocogoose Pro";
  src: url("../fonts/CocogoosePro-Thin.woff2") format("woff2"), url("../fonts/CocogoosePro-Thin.woff") format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Cocogoose Pro";
  src: url("../fonts/CocogoosePro-Ultralight.woff2") format("woff2"), url("../fonts/CocogoosePro-Ultralight.woff") format("woff");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Cocogoose Pro";
  src: url("../fonts/CocogoosePro-Light.woff2") format("woff2"), url("../fonts/CocogoosePro-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Cocogoose Pro";
  src: url("../fonts/CocogoosePro-Semilight.woff2") format("woff2"), url("../fonts/CocogoosePro-Semilight.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Cocogoose Pro";
  src: url("../fonts/CocogoosePro-Bold.woff2") format("woff2"), url("../fonts/CocogoosePro-Bold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
.h1 {
  font-size: 6rem;
  line-height: 0.9;
}

.h2 {
  font-size: 5rem;
}

.h3 {
  font-size: 4rem;
}

.h4 {
  font-size: 3rem;
}

.h5 {
  font-size: 2.4rem;
}

h1, h2, h3, h4 {
  font-family: "Cocogoose Pro", sans-serif;
  letter-spacing: -0.027em;
}

.subtitle p {
  font-size: 2rem;
  line-height: 1.4;
  margin-bottom: 24px;
}

@media (max-width: 1000px) {
  .h1 {
    font-size: 4rem;
  }
  .h2 {
    font-size: 3.6rem;
  }
  .h3 {
    font-size: 3.2rem;
  }
  .h4 {
    font-size: 2.8rem;
  }
  .h5 {
    font-size: 2.6rem;
  }
  .subtitle p {
    font-size: 1.4rem;
  }
  .h1 strong > br, .h1 > br, .h2 strong > br, .h2 > br, .h3 strong > br, .h3 > br, .h4 strong > br, .h4 > br, .h5 strong > br, .h5 > br {
    display: none;
  }
}
.primary-button {
  height: 70px;
  border-radius: 45px;
  display: inline-flex;
  padding: 0 40px;
  align-items: center;
  box-sizing: initial;
  gap: 8px;
  transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  cursor: pointer;
  border: 2px solid currentColor;
}
.primary-button span {
  font-size: 2rem;
  font-weight: 500;
  display: block;
  line-height: 1;
  width: 100%;
  text-align: center;
}
.primary-button strong {
  font-family: "Cocogoose Pro", sans-serif;
  display: block;
  line-height: 1;
  width: 100%;
  text-align: center;
}
.primary-button svg {
  width: 18px;
  transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.primary-button.small {
  height: 44px;
  gap: 0px;
  padding: 0 20px;
}
.primary-button.small span {
  font-size: 1.6rem;
}
.primary-button.small svg {
  width: 12px;
}
.primary-button.white {
  color: white;
}
.primary-button.aqua {
  color: #35BEBB;
}
.primary-button.orange {
  color: #FBAB48;
}
.primary-button.green {
  color: #57C787;
}
.primary-button.combos {
  color: #01B3B5;
}
.primary-button.gray {
  color: #707070;
}
.primary-button.violet {
  color: #F4EDFF;
}
.primary-button.secondary {
  color: #863DFF;
}
.primary-button.secondary:hover {
  color: white;
  background-color: #863DFF;
}
.primary-button.primary {
  color: #2719E6;
}
.primary-button.primary:hover {
  color: white;
  background-color: #2719E6;
}
.primary-button:hover {
  width: calc(var(--w) + var(--w) / 6);
}
.primary-button:hover svg {
  transform: rotate(45deg);
  margin-right: 10px;
}

.simple-button {
  display: inline-flex;
  align-items: center;
  box-sizing: initial;
  gap: 8px;
}
.simple-button span {
  font-size: 1.6rem;
  display: block;
  line-height: 1;
}
.simple-button .icoBtn {
  width: 12px;
  display: flex;
  align-items: center;
}
.simple-button .icoBtn svg {
  transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.simple-button:hover svg {
  transform: translateX(6px);
}
.simple-button:hover svg:first-child {
  transition-delay: 0.1s;
}

.arrow-button {
  width: 50px;
  height: 50px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.arrow-button::after {
  content: "";
  background-color: white;
  border-radius: 100%;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transform-origin: center;
}
.arrow-button > svg {
  position: relative;
  z-index: 1;
  width: 16px;
  transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.arrow-button:hover {
  color: white !important;
}
.arrow-button:hover::after {
  transform: scale(1.2);
}
.arrow-button:hover > svg {
  transform: rotate(45deg);
}
.arrow-button.blue {
  color: #2F6DFB;
}
.arrow-button.blue:hover::after {
  background-color: #2F6DFB;
}
.arrow-button.lightblue {
  color: #CDF3FF;
}
.arrow-button.lightblue:hover::after {
  background-color: #CDF3FF;
}
.arrow-button.blueDark {
  color: #2F347E;
}
.arrow-button.blueDark:hover::after {
  background-color: #2F347E;
}
.arrow-button.aqua {
  color: #35BEBB;
}
.arrow-button.aqua:hover::after {
  background-color: #35BEBB;
}
.arrow-button.violet {
  color: #7959EE;
}
.arrow-button.violet:hover::after {
  background-color: #7959EE;
}
.arrow-button.themeCardHome {
  color: var(--color-card-text);
}
.arrow-button.themeCardHome:hover::after {
  background-color: var(--color-card-text);
}

.right-buttons, .menu {
  font-size: 1.8rem;
  color: #2719E6;
  font-weight: 600;
  display: flex;
  align-items: center;
  font-family: "Onest", sans-serif;
  margin-left: 20px;
}
.right-buttons .is-active, .menu .is-active {
  position: relative;
  color: white;
}
.right-buttons .is-active:after, .menu .is-active:after {
  content: "";
  background-color: #2719E6;
  height: 50px;
  width: calc(100% + 60px);
  border-radius: 30px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
@media (max-width: 1000px) {
  .right-buttons, .menu {
    display: none;
  }
}

.menu > a {
  margin: 0 20px;
}

.left-buttons {
  margin-left: 20px;
  margin-right: auto;
  border-radius: 30px;
  border: 2px solid rgba(0, 0, 0, 0.2);
  display: flex;
  position: relative;
}
.left-buttons:after {
  width: 50%;
  height: 100%;
  border: 2px solid #2719E6;
  border-radius: 30px;
  top: -2px;
  left: -2px;
  content: "";
  position: absolute;
}
.left-buttons a {
  width: 110px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 1.4rem;
  color: #2719E6;
  font-family: "Onest", sans-serif;
}

.comercio-site .left-buttons::after {
  right: -2px;
  left: auto;
}

@media (max-width: 1000px) {
  .menu {
    position: absolute;
    top: 100%;
    left: 0;
    height: calc(100vh - 60px);
    background: white;
    display: block;
    z-index: -999;
    width: 100%;
    border-radius: 30px;
    padding: 30px 10px;
    text-align: center;
    opacity: 0;
    pointer-events: none;
    transition: ease-in-out 0.3s;
    overflow-y: auto;
  }
  .menu.open {
    opacity: 1;
    pointer-events: initial;
    z-index: 1;
  }
  .menu.open > * {
    pointer-events: initial;
    display: block;
  }
  .menu > * {
    font-size: 1.6rem;
    display: none;
    pointer-events: none;
  }
  .menu > .dropdown ul {
    position: static;
    transform: none;
    opacity: 1;
    padding: 10px;
    margin: 6px 0;
    border-top: 1px solid rgba(47, 52, 126, 0.3);
    border-bottom: 1px solid rgba(47, 52, 126, 0.3);
    border-radius: 0;
    white-space: wrap;
    font-size: 1.6rem;
    line-height: 1.1;
  }
  .menu > .dropdown ul li {
    margin: 10px 0;
  }
  .menu .right-buttons-mob {
    margin: 0 26px;
    margin-top: 10px;
    padding: 10px 0;
  }
}
.header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 30px;
  width: 100%;
  max-width: 1400px;
  position: fixed;
  z-index: 9;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 50px;
  background-color: white;
  transition: ease-in 0.5s;
}
.header .logo svg {
  width: 160px;
  display: block;
}
.header.up {
  transform: translateY(-150%) translateX(-50%);
}
@media (max-width: 1000px) {
  .header {
    padding: 10px 20px;
  }
  .header .burger {
    width: 40px;
    height: 40px;
    padding: 8px 4px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
  }
  .header .burger::after, .header .burger::before, .header .burger i {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background-color: #35BEBB;
    transition: ease-in-out 0.3s;
  }
  .header .burger.open::after, .header .burger.open::before {
    transform: rotate(45deg) translateY(-6px);
  }
  .header .burger.open::before {
    transform: rotate(135deg) translateY(-8px) translateX(2px);
  }
  .header .burger.open i {
    display: none;
  }
  .header .logo {
    margin: auto;
    transform: translateX(20px);
  }
  .header .logo svg {
    max-width: 140px;
  }
}

.footer {
  padding: 100px 0 0;
}
@media (max-width: 1000px) {
  .footer {
    padding: 50px 0;
    text-align: center;
  }
}
.footer_top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.footer_top .logo img {
  max-width: 200px;
}
.footer_top .logo .social-media {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 32px;
  color: #CDF3FF;
}
.footer_top .logo .social-media svg {
  max-width: 26px;
}
.footer_top .contactos-foo {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 80px;
       column-gap: 80px;
  row-gap: 30px;
  color: white;
}
.footer_top .contactos-foo h5 {
  font-size: 2rem;
  font-weight: 600;
  font-family: "Cocogoose Pro", sans-serif;
  color: #CDF3FF;
  margin-bottom: 20px;
}
.footer_top .contactos-foo a {
  font-size: 1.4rem;
}
.footer_top .contactos-foo a:hover {
  text-decoration: underline;
}
@media (max-width: 1000px) {
  .footer_top {
    flex-direction: column;
    align-items: flex-start;
    padding: 0 16px;
  }
  .footer_top .contactos-foo {
    margin-top: 30px;
    flex-direction: column;
    gap: 30px;
  }
}
.footer_bottom {
  margin-top: 32px;
  margin-bottom: 48px;
  color: white;
}
@media (max-width: 1000px) {
  .footer_bottom {
    padding: 0 16px;
  }
}
.footer_bottom small {
  font-size: 1.3rem;
}
.footer_bottom .links {
  max-width: 350px;
}
.footer_bottom .links a {
  text-decoration: underline;
  font-size: 1.3rem;
}
.footer_legals {
  padding: 48px 0 56px;
  font-size: 1.3rem;
  line-height: 1.2;
  color: white;
}
.footer_legals .small p {
  font-size: 1.2rem;
  margin: 12px 0;
}
@media (max-width: 1000px) {
  .footer_legals {
    padding: 30px 16px 40px;
  }
}
.footer_legals .columns {
  display: flex;
  margin-bottom: 32px;
}
.footer_legals .columns-4-footer {
  align-items: center;
  gap: 30px;
}
.footer_legals .columns-4-footer a {
  font-size: 1.5rem;
}
.footer_legals .columns-4-footer .line {
  height: 50px;
  width: 1px;
  background-color: white;
  margin: 0 32px;
}
.footer_legals .columns-4-footer svg {
  max-width: 180px;
}
@media (max-width: 1000px) {
  .footer_legals .columns-4-footer {
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
  }
  .footer_legals .columns-4-footer a {
    width: 150px;
  }
  .footer_legals .columns-4-footer small {
    width: 150px;
  }
  .footer_legals .columns-4-footer .line {
    margin: 0 10px;
  }
}
.footer_legals .columns-2-footer {
  align-items: flex-end;
  gap: 56px;
}
.footer_legals .columns-2-footer .small {
  max-width: 46%;
}
.footer_legals .columns-2-footer .small p {
  font-size: 1.2rem;
  margin: 12px 0;
}
.footer_legals .columns-2-footer .small .links {
  display: block;
  margin-top: 14px;
  font-size: 1rem;
  line-height: 1.2;
  max-width: 400px;
}
.footer_legals .columns-2-footer .small.logos {
  display: flex;
  align-items: center;
  gap: 20px;
}
.footer_legals .columns-2-footer .small.logos img {
  max-width: 100px;
  max-height: 100px;
}
@media (max-width: 1000px) {
  .footer_legals .columns-2-footer {
    align-items: center;
    gap: 30px;
    flex-direction: column;
  }
  .footer_legals .columns-2-footer .small {
    max-width: 100%;
  }
}
.footer_legals .end {
  margin-top: 26px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.footer_legals .end img {
  max-width: 50px;
  max-height: 68px;
}
.footer_legals .end small {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 8px;
  opacity: 0.6;
}
.footer_legals .end small svg {
  display: block;
  margin-top: -5px;
}
.footer_legals .end small:first-child {
  margin-left: 0;
}

.hero-banners {
  position: relative;
}
.hero-banners_home {
  width: 100%;
  height: 100dvh;
  display: flex;
  align-items: center;
}
.hero-banners_home .home-swiper {
  height: 100%;
}
.hero-banners_home .home-swiper .swiper-slide {
  padding-top: 100px;
  position: relative;
}
.hero-banners_home .home-swiper .swiper-slide::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 70%;
  height: 100%;
  background: linear-gradient(90deg, #000000 0%, #000000 60%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.4;
  pointer-events: none;
}
@media (max-width: 1000px) {
  .hero-banners_home .home-swiper .swiper-slide {
    padding-top: 50px;
    padding-bottom: 80px;
  }
}
.hero-banners_home .promo-highlight {
  margin-top: 24px;
}
.hero-banners_home .primary-button {
  margin-top: 20px;
}
.hero-banners_home-comercio {
  height: 100vh;
  display: flex;
  align-items: center;
  background-color: #170bbb;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.hero-banners_home-comercio_content {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}
.hero-banners_home-comercio_content h2.block {
  display: flex;
  border-radius: 50px;
  height: 80px;
  align-items: center;
  padding: 0 30px;
  background-color: white;
  color: #2719E6;
}
.hero-banners_home-comercio img {
  display: block;
  bottom: 0;
  right: 0;
  position: absolute;
  max-height: 85%;
  pointer-events: none;
}
.hero-banners_internal {
  width: 100%;
  max-width: 1400px;
  margin: 100px auto 14px;
  border-radius: 30px;
  height: 560px;
  background-color: #35BEBB;
  background-position: center;
  background-size: cover;
  overflow: hidden;
}
.hero-banners_internal:not(.clean)::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 70%;
  height: 100%;
  background: linear-gradient(90deg, #000000 0%, #000000 60%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.4;
  pointer-events: none;
}
.hero-banners_internal.template_1::after {
  background: linear-gradient(90deg, #863DFF 0%, #863DFF 60%, rgba(255, 255, 255, 0) 100%);
}
.hero-banners_internal.template_2::after {
  background: linear-gradient(90deg, #2719E6 0%, #2719E6 60%, rgba(255, 255, 255, 0) 100%);
}
.hero-banners_internal .subtitle {
  margin-bottom: 32px;
}
@media (max-width: 1000px) {
  .hero-banners_internal {
    margin: 0px auto 14px;
    height: auto;
    border-radius: 0 0 30px 30px;
  }
  .hero-banners_internal .hero-container {
    justify-content: flex-end !important;
    align-items: center !important;
    min-height: 120vh;
    flex-direction: column;
  }
}
.hero-banners .hero-container {
  z-index: 1;
  position: relative;
  width: 1160px;
  max-width: 1200px;
  margin: auto;
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: space-between;
}
.hero-banners .hero-container h1 {
  margin-bottom: 24px;
  width: 650px;
  font-weight: 400;
}
.hero-banners .hero-container:not(.no-video) > .hero-header {
  color: white;
  max-width: 512px;
}
.hero-banners .hero-container.no-video .hero-header h1 {
  color: white;
}
.hero-banners .hero-container.no-video .hero-header .subtitle {
  color: white;
}
@media (max-width: 1000px) {
  .hero-banners .hero-container {
    width: 94%;
    max-width: 100%;
    align-items: flex-end;
  }
  .hero-banners .hero-container h1 {
    margin-bottom: 24px;
    width: 100%;
    padding: 0 20px;
  }
  .hero-banners .hero-container .subtitle {
    padding: 0 20px;
  }
}
.hero-banners .hero-image, .hero-banners .hero-video {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 1000px) {
  .hero-banners .hero-image, .hero-banners .hero-video {
    border-radius: 0 0 20px 20px;
  }
}
.hero-banners .home-swiper .swiper-pagination {
  width: 100%;
  max-width: 1180px;
  padding: 0 10px;
  position: absolute;
  left: 50%;
  bottom: 50px;
  transform: translateX(-50%);
  z-index: 8;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
}
.hero-banners .home-swiper .swiper-pagination-bullet {
  margin: 0 !important;
  height: 12px;
  width: 18px;
  border-radius: 6px;
  background-color: white;
  opacity: 0.5;
  transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.15);
}
.hero-banners .home-swiper .swiper-pagination-bullet-active {
  width: 22px;
  opacity: 1;
}

.hero-form {
  max-width: 380px;
  background-color: white;
  border-radius: 30px;
  padding: 56px;
}
.hero-form p {
  color: var(--color-theme);
  font-size: 1.6rem;
  line-height: 1.6;
}
.hero-form.bg-transparent {
  background-color: transparent;
}
@media (max-width: 1000px) {
  .hero-form {
    padding: 40px;
    margin-top: 30px;
    max-width: 100vw;
    min-width: 100vw;
  }
}
.hero-form form .spinner {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  left: 50%;
  z-index: 9;
  height: 50px;
  width: 100px;
  color: var(--color-theme);
  bottom: 0px;
  transform: translateX(-50%);
}
.hero-form form.sending {
  position: relative;
  color: var(--color-theme);
}
.hero-form form.sending .primary-button {
  visibility: hidden;
}
.hero-form form.sending .spinner {
  opacity: 1;
}

.promo-highlight {
  min-height: 80px;
  padding: 10px 20px;
  display: flex;
  align-items: center;
  border-radius: 50px;
  max-width: 360px;
  gap: 16px;
}
.promo-highlight > p {
  font-size: 14px;
  line-height: 1.2;
}
.promo-highlight > img {
  max-width: 46px;
}
.promo-highlight.color-theme {
  background-color: var(--color-theme);
  color: white;
}
.promo-highlight.bg-blur {
  background-color: rgba(0, 0, 0, 0.2);
  color: white;
  -webkit-backdrop-filter: blur(30px);
          backdrop-filter: blur(30px);
}
.promo-highlight.bg-white {
  background-color: white;
  color: #2F6DFB;
}

.promo-products {
  min-height: 80px;
  padding: 10px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  max-width: 100%;
  width: 100%;
  gap: 16px;
}
.promo-products > p {
  font-size: 14px;
  line-height: 1.2;
  max-width: 190px;
}
.promo-products > img {
  max-width: 46px;
}
.promo-products.bgClear {
  background-color: rgba(255, 255, 255, 0.15);
}
.promo-products.bgBlue {
  background-color: #2F6DFB;
}
.promo-products.bgCombos {
  background-color: #01B3B5;
}

.grid-general {
  margin: 16px 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-column-gap: 16px;
}
.grid-general > .general-cards {
  min-height: 235px;
  justify-content: flex-start;
}
@media (max-width: 1000px) {
  .grid-general {
    overflow: hidden;
    overflow-x: scroll;
    width: calc(100% + 20px);
  }
  .grid-general > .general-cards {
    min-width: 300px;
  }
}

.grid-products {
  margin: 16px 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 24px;
  grid-row-gap: 24px;
}
.grid-products.bigGap {
  grid-column-gap: 42px;
  grid-row-gap: 42px;
}
@media (max-width: 1000px) {
  .grid-products {
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 20px;
  }
}

.grid-combos {
  margin: 16px auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  max-width: 800px;
}
@media (max-width: 1000px) {
  .grid-combos {
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 20px;
  }
}

.grid-masonry {
  margin: 16px 0;
  display: grid;
  gap: 16px 16px;
  grid-template-areas: "div1 div2 div2" "div3 div3 div4" "div5 div6 div6";
}
.grid-masonry > :first-child {
  grid-area: div1;
}
.grid-masonry > :nth-child(2) {
  grid-area: div2;
}
.grid-masonry > :nth-child(3) {
  grid-area: div3;
}
.grid-masonry > :nth-child(4) {
  grid-area: div4;
}
.grid-masonry > :nth-child(5) {
  grid-area: div5;
}
.grid-masonry > :nth-child(6) {
  grid-area: div6;
}

.grid-masonry-combos {
  margin: 16px 0;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 16px 16px;
  grid-template-areas: "div1 div2 div2" "div3 div3 div4";
}
.grid-masonry-combos > :first-child {
  grid-area: div1;
}
.grid-masonry-combos > :nth-child(2) {
  grid-area: div2;
}
.grid-masonry-combos > :nth-child(3) {
  grid-area: div3;
}
.grid-masonry-combos > :nth-child(4) {
  grid-area: div4;
}

.grid-masonry-invert {
  margin: 16px 0;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 16px 16px;
  grid-template-areas: "div1 div1 div2" "div3 div4 div4";
}
.grid-masonry-invert > :first-child {
  grid-area: div1;
}
.grid-masonry-invert > :nth-child(2) {
  grid-area: div2;
}
.grid-masonry-invert > :nth-child(3) {
  grid-area: div3;
}
.grid-masonry-invert > :nth-child(4) {
  grid-area: div4;
}

.grid-home {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-column-gap: 16px;
  grid-row-gap: 16px;
}
.grid-home > :nth-child(1) {
  grid-area: 1/1/2/3;
}
.grid-home > :nth-child(2) {
  grid-area: 2/1/4/2;
}
.grid-home > :nth-child(3) {
  grid-area: 2/2/3/3;
}
.grid-home > :nth-child(4) {
  grid-area: 3/2/4/3;
}

.grid-productores {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-column-gap: 12px;
  grid-row-gap: 12px;
}
.grid-productores > :first-child {
  grid-area: 1/1/2/3;
}
.grid-productores > :nth-child(2) {
  grid-area: 1/3/2/4;
}
.grid-productores > :nth-child(3) {
  grid-area: 2/1/3/2;
}
.grid-productores > :nth-child(4) {
  grid-area: 2/2/3/3;
}
.grid-productores > :nth-child(5) {
  grid-area: 2/3/3/4;
}
.grid-productores > :nth-child(6) {
  grid-area: 3/1/4/2;
}
.grid-productores > :nth-child(7) {
  grid-area: 3/2/4/4;
}
@media (max-width: 1000px) {
  .grid-productores {
    display: flex;
    overflow: hidden;
    overflow-x: scroll;
    padding-bottom: 10px;
    width: calc(100% + 20px);
  }
  .grid-productores > .general-cards {
    min-width: 300px;
  }
}

.grid-proyectos {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 16px;
}
@media (max-width: 1000px) {
  .grid-proyectos {
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 20px;
  }
}

.grid-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
}

.three-cards-grid {
  display: flex;
  align-items: center;
  gap: 40px;
  margin: 40px 0;
}
.three-cards-grid_card {
  max-width: 30%;
  width: 300px;
  aspect-ratio: 10/16;
  border-radius: 40px;
  border: 2px solid #863DFF;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 30px;
  text-align: center;
  padding: 30px;
  transition: ease-out 0.3s;
}
.three-cards-grid_card.invert, .three-cards-grid_card:hover {
  background-color: #863DFF;
  color: white;
}

.banner-hand {
  margin: 16px 0;
  position: relative;
  border-radius: 30px;
  padding: 30px 50px 10px;
  background-color: #E8EDF7;
  display: flex;
  align-items: center;
  justify-content: space-around;
  color: #2719E6;
  height: 420px;
}
.banner-hand.secondary {
  color: #863DFF;
  background-color: #F4EDFF;
}
.banner-hand > svg {
  width: 480px;
  max-width: 40%;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  pointer-events: none;
}
.banner-hand > .text h3, .banner-hand > .text p {
  margin-bottom: 20px;
}
.banner-hand.inverter {
  flex-direction: row-reverse;
  justify-content: flex-end;
}
.banner-hand.inverter > .text {
  max-width: 450px;
}
.banner-hand.inverter > img {
  position: absolute;
  transform: scale(0.8);
  transform-origin: center bottom;
  transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  bottom: 0%;
  right: 0;
  z-index: 1;
  pointer-events: none;
  height: 120%;
}
@media (max-width: 1000px) {
  .banner-hand.inverter {
    flex-direction: column;
  }
}
.banner-hand.inverter:hover > img {
  transform: scale(0.95) translateX(0px);
}
.banner-hand.inverter:hover > svg {
  transform: translateX(20px);
}
.banner-hand:not(.inverter) {
  gap: 30px;
}
.banner-hand:not(.inverter) .titlesImg {
  width: 350px;
  height: 100%;
  display: flex;
  align-items: center;
}
.banner-hand:not(.inverter) .titlesImg .h4 {
  min-height: 150px;
}
.banner-hand:not(.inverter) img {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: bottom;
     object-position: bottom;
  transform: translateY(10px);
}
.banner-hand:not(.inverter) .text {
  width: 700px;
}
.banner-hand:not(.inverter) .text a {
  margin-bottom: 10px;
}
@media (max-width: 1000px) {
  .banner-hand {
    flex-direction: column;
    gap: 20px;
    padding: 30px;
  }
  .banner-hand > svg {
    max-width: 80%;
  }
  .banner-hand > img {
    max-width: 100%;
    top: 20px;
    transform: scale(1) translateX(0px);
  }
  .banner-hand .primary-button {
    display: flex;
  }
}

.general-cards {
  border-radius: 30px;
  padding: 60px 40px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  background-color: white;
  color: #2719E6;
}
.general-cards.ghost {
  transition: ease-out 0.4s;
}
.general-cards.ghost:hover {
  box-shadow: 0 0 26px rgba(0, 0, 0, 0.2);
}
.general-cards .ico {
  height: 60px;
  margin-bottom: 16px;
  width: auto;
}
.general-cards .h5 {
  font-weight: 600;
}
.general-cards > p {
  font-size: 1.8rem;
  line-height: 1.2;
}
.general-cards > .primary-button {
  margin-top: auto;
}
.general-cards.features {
  justify-content: flex-start;
}
.general-cards.features .h4 {
  max-width: 50%;
}
.general-cards.features p {
  max-width: 75%;
}
.general-cards.products {
  position: relative;
  color: white;
  padding-bottom: 0;
}
.general-cards.products > p {
  font-size: 2rem;
  line-height: 1.2;
  max-width: 220px;
}
@media (max-width: 1000px) {
  .general-cards.products > p {
    max-width: 100%;
  }
}
.general-cards.products .primary-button {
  margin: 16px 0;
}
.general-cards.products small {
  font-size: 1.6rem;
}
.general-cards.products .label-new-product {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
}
.general-cards.products .foo {
  height: 80px;
  margin-top: 16px;
  width: 100%;
}
.general-cards.products .foo .promo-products {
  position: absolute;
  left: 0;
  bottom: 0;
}
.general-cards.products.green {
  background-color: #57C787;
}
.general-cards.products.green .primary-button {
  color: #57C787;
}
.general-cards.products.orange {
  background-color: #FBAB48;
}
.general-cards.products.orange .primary-button {
  color: #FBAB48;
}
.general-cards.products.pink {
  background-color: #FF87AB;
}
.general-cards.products.pink .primary-button {
  color: #FF87AB;
}
.general-cards.products.lightblue {
  background-color: #CDF3FF;
}
.general-cards.products.lightblue .primary-button {
  color: #CDF3FF;
}
.general-cards.products.violet {
  background-color: #7959EE;
}
.general-cards.products.violet .primary-button {
  color: #7959EE;
}
.general-cards.products.yellow {
  background-color: #FFBF00;
}
.general-cards.products.yellow .primary-button {
  color: #FFBF00;
}
.general-cards.plans {
  position: relative;
  background-color: var(--color-theme);
  color: white !important;
}
.general-cards.plans .title {
  font-size: 3rem;
  color: white !important;
  margin-bottom: 5px;
}
.general-cards.plans .price {
  font-size: 4rem;
  margin-bottom: 16px;
}
.general-cards.plans .label-new-product {
  display: none;
  position: absolute;
  left: 40%;
  top: 0;
  transform: translate(-50%, -50%);
}
.general-cards.plans.recomended {
  border: 4px solid #2F6DFB;
}
.general-cards.plans.recomended .label-new-product {
  display: inline-flex;
}
.general-cards.plans.promo {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
@media (max-width: 1000px) {
  .general-cards.plans.promo {
    margin-bottom: 50px;
  }
}
.general-cards.plans .promo-products {
  position: absolute;
  left: 0;
  top: calc(100% - 30px);
  color: white;
}
.general-cards.plans .primary-button:hover {
  color: var(--color-theme);
  background-color: white;
}
.general-cards.home {
  position: relative;
  padding-left: 90px;
  padding-right: 90px;
  align-items: flex-start;
}
.general-cards.home > p {
  font-size: 2.4rem;
  line-height: 1.2;
}
.general-cards.home.gradient {
  color: #863DFF;
  background: linear-gradient(244deg, #E4D5FD 0%, #CDF3FF 100%) 0% 0%;
  min-height: 380px;
  justify-content: center;
}
.general-cards.home.gradient p {
  max-width: 360px;
}
.general-cards.home.gradient img {
  position: absolute;
  height: 110%;
  left: 50%;
  bottom: 0;
}
.general-cards.home.lightblue {
  color: #2719E6;
  background-color: #CDF3FF;
  justify-content: flex-end;
  padding-bottom: 0;
}
.general-cards.home.lightblue img {
  height: 55%;
  width: auto;
  margin-top: 60px;
}
.general-cards.home.lightgreen {
  color: #2719E6;
  background-color: #E8EDF7;
}
.general-cards.home.lightviolet {
  color: #863DFF;
  background-color: #F4EDFF;
}
.general-cards.rating {
  background-color: white !important;
  text-align: left;
  height: 380px;
}
.general-cards.rating .rating-number {
  font-family: "Cocogoose Pro", sans-serif;
}
.general-cards.rating.theme > * {
  color: var(--color-theme) !important;
}
.general-cards.rating.theme > p {
  font-size: 1.8rem;
  color: var(--color-card-text) !important;
}
.general-cards.rating strong {
  margin-top: auto;
  font-size: 2.2rem;
}
.general-cards.combos {
  position: relative;
  background-color: white;
  box-shadow: 0px 3px 56px rgba(0, 0, 0, 0.0784313725);
  align-items: center;
  aspect-ratio: 4/3;
}
.general-cards.combos .label-new-product {
  display: none;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
}
.general-cards.combos .combos-icons {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 24px;
}
.general-cards.combos .combos-icons img {
  max-width: 60px;
  display: block;
}
.general-cards.combos .combos-icons svg {
  min-width: 60px;
}
.general-cards.combos > p {
  max-width: 280px;
  text-align: center;
  font-size: 1.8rem;
  margin-bottom: 32px;
}
.general-cards.combos.recomended .label-new-product {
  display: inline-flex;
}
.general-cards.combos.promo {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.general-cards.combos .promo-products {
  position: absolute;
  left: 0;
  top: calc(100% - 30px);
  color: white;
}
@media (max-width: 1000px) {
  .general-cards.combos {
    aspect-ratio: auto;
    max-width: 100%;
    text-align: center;
  }
}
.general-cards ul {
  margin: 16px 0;
}
.general-cards ul li {
  font-size: 1.2rem;
  padding-left: 14px;
  position: relative;
  line-height: 1.3;
  margin: 4px 0;
}
.general-cards ul li::after {
  content: "L";
  position: absolute;
  font-weight: 500;
  left: 0;
  top: -1px;
  transform: rotate(45deg) scaleX(-1);
}
.general-cards.proyectos {
  aspect-ratio: 4/3;
  justify-content: flex-end;
  background-size: cover;
  background-position: center;
  background-blend-mode: multiply;
  background-color: #9f9f9f;
}
.general-cards.proyectos h4, .general-cards.proyectos small {
  color: white;
  max-width: 320px;
}
.general-cards.proyectos small {
  font-size: 1.8rem;
}
.general-cards.proyectos h4 {
  margin-bottom: 32px !important;
}

.infographic {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: 1fr;
  grid-column-gap: 10px;
  grid-row-gap: 0px;
  margin-bottom: 100px;
  margin-top: 50px;
}
.infographic .col {
  display: flex;
  flex-direction: column;
  position: relative;
  gap: 150px;
}
.infographic .col.center {
  align-items: center;
  justify-content: center;
}
.infographic .col.bottom {
  justify-content: flex-end;
}
.infographic .col .phone {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-height: 80%;
}
.infographic .col .boxinfo {
  display: flex;
  flex-direction: column;
  gap: 20px;
  color: #2719E6;
  width: 100%;
  align-items: flex-start;
  margin: 5% 0;
}
.infographic .col .boxinfo .h5 {
  font-weight: 600;
}
.infographic .col .boxinfo.alignRight {
  align-items: flex-end;
  text-align: right;
}
.infographic.clear .boxinfo {
  color: white;
}

.newsletters {
  padding: 15% 0;
  text-align: center;
  color: #863DFF;
}
.newsletters form {
  margin-top: 5%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #863DFF;
}
.newsletters form input {
  font-family: "Cocogoose Pro", sans-serif;
  padding: 14px 0;
  font-weight: 300;
  border-bottom: 2px solid currentColor;
  font-size: 1.8rem;
  text-align: center;
  color: inherit;
}
.newsletters form input::-moz-placeholder {
  color: inherit;
  opacity: 1;
}
.newsletters form input::placeholder {
  color: inherit;
  opacity: 1;
}

.threecards-swiper {
  padding: 50px 0 0 0 !important;
  margin-bottom: 32px !important;
}
.threecards-swiper .general-cards.products {
  height: 486px;
}
.threecards-swiper .general-cards.products h4 {
  min-height: 80px;
}
@media (max-width: 1000px) {
  .threecards-swiper .general-cards.products h4 {
    font-size: 3.4rem;
  }
}
.threecards-swiper .general-cards.products .subtitle {
  min-height: 75px;
}
.threecards-swiper .general-cards.products .primary-button.small {
  min-height: 44px;
}
.threecards-swiper .general-cards.products small {
  min-height: 26px;
}

.threecards-button-next,
.threecards-button-prev {
  position: absolute;
  top: 50%;
  left: 30px;
  transform: translateY(-56%);
  width: 50px;
  height: 50px;
  border-radius: 50px;
  background-color: #C5F4E1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.threecards-button-next svg,
.threecards-button-prev svg {
  transform: rotate(-135deg);
  width: 18px;
}
@media (max-width: 1000px) {
  .threecards-button-next,
  .threecards-button-prev {
    top: auto;
    bottom: 0;
    transform: translateY(0%);
    left: calc(50% - 80px);
  }
}

.threecards-button-next {
  left: auto;
  right: 30px;
}
@media (max-width: 1000px) {
  .threecards-button-next {
    right: calc(50% - 60px);
  }
}
.threecards-button-next svg {
  transform: rotate(45deg);
}

.threecards-pagination {
  z-index: 8;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.threecards-pagination .swiper-pagination-bullet {
  margin: 30px 0 0 !important;
  height: 12px;
  width: 18px;
  border-radius: 6px;
  background-color: #57C787;
  opacity: 0.5;
  transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.threecards-pagination .swiper-pagination-bullet-active {
  width: 22px;
  opacity: 1;
}

.tabs-wrapper {
  text-align: center;
}
.tabs-wrapper .tab-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline-flex;
  position: relative;
  border: 2px solid #863DFF;
  color: #863DFF;
  border-radius: 50px;
  height: 60px;
}
@media (max-width: 1000px) {
  .tabs-wrapper .tab-list {
    flex-direction: column;
    border-radius: 20px;
  }
}
.tabs-wrapper .tab-list::before {
  content: "";
  display: block;
  height: 100%;
  width: 33%;
  position: absolute;
  bottom: 0px;
  background-color: #863DFF;
  transition: 0.3s;
  border-radius: 40px;
  z-index: -1;
}
@media (max-width: 1000px) {
  .tabs-wrapper .tab-list::before {
    height: 36px;
    width: 100%;
    top: 4px;
  }
}
.tabs-wrapper_2-items {
  overflow: hidden;
  text-align: center;
}
.tabs-wrapper_2-items .tab-list::before {
  width: 50%;
}
@media (max-width: 1000px) {
  .tabs-wrapper_2-items .tab-list::before {
    height: 36px;
    width: 100%;
  }
}
.tabs-wrapper_4-items {
  overflow: hidden;
  text-align: center;
}
.tabs-wrapper_4-items .tab-list::before {
  width: 25%;
}
@media (max-width: 1000px) {
  .tabs-wrapper_4-items .tab-list::before {
    height: 36px;
    width: 100%;
  }
}
.tabs-wrapper .tab-item {
  flex: 1;
  text-align: center;
  transition: 0.3s;
  min-width: 250px;
  padding: 0 20px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 1000px) {
  .tabs-wrapper .tab-item {
    padding: 10px 20px;
  }
}
.tabs-wrapper .tab-toggle {
  display: none;
}
.tabs-wrapper .tab-content {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  z-index: -1;
  width: 100%;
}
.tabs-wrapper .tab-toggle:nth-child(1):checked ~ .tab-list .tab-item:nth-child(1),
.tabs-wrapper .tab-toggle:nth-child(2):checked ~ .tab-list .tab-item:nth-child(2),
.tabs-wrapper .tab-toggle:nth-child(3):checked ~ .tab-list .tab-item:nth-child(3),
.tabs-wrapper .tab-toggle:nth-child(4):checked ~ .tab-list .tab-item:nth-child(4) {
  opacity: 1;
  color: white;
}
.tabs-wrapper .tab-toggle:nth-child(2):checked ~ .tab-list::before {
  transform: translateX(100%);
}
@media (max-width: 1000px) {
  .tabs-wrapper .tab-toggle:nth-child(2):checked ~ .tab-list::before {
    transform: translateX(0%);
    transform: translateY(100%);
  }
}
.tabs-wrapper .tab-toggle:nth-child(3):checked ~ .tab-list::before {
  transform: translateX(200%);
}
@media (max-width: 1000px) {
  .tabs-wrapper .tab-toggle:nth-child(3):checked ~ .tab-list::before {
    transform: translateX(0%);
    transform: translateY(200%);
  }
}
.tabs-wrapper .tab-toggle:nth-child(4):checked ~ .tab-list::before {
  transform: translateX(300%);
}
@media (max-width: 1000px) {
  .tabs-wrapper .tab-toggle:nth-child(4):checked ~ .tab-list::before {
    transform: translateX(0%);
    transform: translateY(300%);
  }
}
.tabs-wrapper .tab-toggle:nth-child(1):checked ~ .tab-container .tab-content:nth-child(1),
.tabs-wrapper .tab-toggle:nth-child(2):checked ~ .tab-container .tab-content:nth-child(2),
.tabs-wrapper .tab-toggle:nth-child(3):checked ~ .tab-container .tab-content:nth-child(3),
.tabs-wrapper .tab-toggle:nth-child(4):checked ~ .tab-container .tab-content:nth-child(4),
.tabs-wrapper .tab-container .tab-content.singleActive {
  display: block;
  position: static;
  opacity: 1;
  pointer-events: initial;
  z-index: 0;
}
.tabs-wrapper .tab-trigger {
  white-space: nowrap;
  font-family: "Cocogoose Pro", sans-serif;
  display: flex;
  height: 100%;
  width: 100%;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.tabs-wrapper .tab-container {
  padding: 30px 0px 0;
  text-align: left;
  position: relative;
}
.tabs-wrapper.theme .tab-list {
  border: 2px solid var(--color-theme);
  color: var(--color-theme);
}
.tabs-wrapper.theme .tab-list::before {
  background-color: var(--color-theme);
}

@media (max-width: 1000px) {
  .tab-content .grid-products, .tab-content .grid-masonry-combos {
    width: calc(100% + 14px);
    overflow-x: scroll;
    display: flex;
    gap: 14px;
  }
  .tab-content .grid-products .general-cards, .tab-content .grid-masonry-combos .general-cards {
    min-width: 300px;
  }
  .tab-content .grid-masonry-combos {
    margin-bottom: 30px !important;
  }
}
.accordions-content {
  position: relative;
  max-width: 960px;
  margin: auto;
}
.accordions-content .ac-icon-product {
  position: absolute;
  left: -30px;
  top: 80px;
  max-width: 500px;
  pointer-events: none;
  z-index: -1;
}
.accordions-content .ac-icon i {
  font-style: normal;
}
.accordions-content .accordion-title {
  text-align: center;
  margin-bottom: 40px;
}
@media (max-width: 1000px) {
  .accordions-content .accordion-title {
    max-width: 100%;
  }
  .accordions-content .accordion-title .h3 {
    margin-left: 0;
  }
}
.accordions-content .accordion-group {
  width: 100%;
  margin: 1rem 0;
}
.accordions-content .accordion-group .accordion {
  border: 1px solid #CFB7FD;
  border-radius: 40px;
}
.accordions-content .accordion-group .accordion + .accordion {
  margin-top: 1rem;
}
.accordions-content .accordion-group .ac-state {
  display: none;
}
.accordions-content .accordion-group .ac-trigger {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  padding: 1.8rem 3rem;
  font-family: "Cocogoose Pro", sans-serif;
  font-size: 2rem;
  font-weight: 300;
}
.accordions-content .accordion-group .ac-title {
  font-weight: 400;
}
@media (max-width: 1000px) {
  .accordions-content .accordion-group .ac-title {
    font-size: 2rem;
  }
}
.accordions-content .accordion-group .ac-content {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 300ms ease;
}
.accordions-content .accordion-group .ac-content-inner {
  overflow: hidden;
  padding: 0 3rem;
}
@media (max-width: 1000px) {
  .accordions-content .accordion-group .ac-content-inner p {
    font-size: 1.6rem;
  }
}
.accordions-content .accordion-group .ac-content-inner p {
  max-width: 710px;
  margin: 10px 0 20px;
}
.accordions-content .accordion-group .ac-content img {
  display: block;
  margin: 0 auto;
}
.accordions-content .accordion-group .ac-state:not(:checked) ~ .ac-trigger .ac-icon-close {
  display: none;
}
.accordions-content .accordion-group .ac-state:checked ~ .ac-trigger .ac-icon-open {
  display: none;
}
.accordions-content .accordion-group .ac-state:checked ~ .ac-content {
  grid-template-rows: 1fr;
}
.accordions-content .accordion-group .accordion:has(.ac-state:checked) {
  background-color: rgba(207, 183, 253, 0.25);
}

.comercio .accordions-content .accordion-group .accordion:has(.ac-state:checked) {
  background-color: #cdf3ff;
  color: #2719E6;
}

.slider-comments {
  position: relative;
  padding: 60px 0 80px;
}
.slider-comments .title {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  position: absolute;
  max-width: 300px;
}
.slider-comments .swipper-comments {
  margin: 0;
  width: 100%;
  transform: translateX(350px);
  transition: ease-out 0.3s;
}
.slider-comments .swipper-comments.centered {
  transform: translateX(0);
}
.slider-comments .swipper-comments .arrow-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin-top: 40px;
}
.slider-comments .swipper-comments .arrow-content .swiper-button-disabled {
  pointer-events: none;
  opacity: 0.1;
}
.slider-comments .swipper-comments .arrow-content div {
  cursor: pointer;
}
.slider-comments .card-swiper {
  width: 100%;
  aspect-ratio: 10/14;
  border-radius: 40px;
  border: 2px solid #2719E6;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 40px;
}
.slider-comments .card-swiper_image {
  width: 130px;
  aspect-ratio: 16/9;
  border-radius: 30px;
  overflow: hidden;
}
.slider-comments .card-swiper_image img {
  display: block;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.slider-comments.comercial .card-swiper {
  border: 2px solid white;
  background-color: white;
  color: #2719E6;
}
.slider-comments.comercial .card-swiper_image {
  border-radius: 0px;
}
.slider-comments.comercial .card-swiper_image img {
  -o-object-position: left center;
     object-position: left center;
  -o-object-fit: contain;
     object-fit: contain;
}

.rating-stars {
  --percent: calc(var(--rating) / 5 * 100%);
  margin: 8px 0 16px;
  display: inline-block;
  font-size: 2rem;
  line-height: 1;
}
.rating-stars::before {
  content: "★★★★★";
  letter-spacing: 2px;
  background: linear-gradient(90deg, var(--color-theme) var(--percent), #ddd var(--percent));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.box-2-columns {
  display: flex;
  align-items: center;
  gap: 40px;
  margin: 50px 0 100px;
}
.box-2-columns .col {
  width: 50%;
}
.box-2-columns .col p {
  margin: 20px 0;
  max-width: 340px;
}
.box-2-columns .col.image {
  background-color: #CDF3FF;
  aspect-ratio: 4/2.5;
  position: relative;
  border-radius: 30px;
}
.box-2-columns .col.image img {
  position: absolute;
  display: block;
  height: 110%;
  right: 0;
  bottom: 0;
}

.blog-cards {
  position: relative;
  color: #863DFF;
}
.blog-cards_image {
  display: block;
  border-radius: 24px;
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
  position: relative;
  margin-top: auto;
}
.blog-cards_image img {
  width: 100%;
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
}
.blog-cards.news-big .blog-cards_image {
  border-radius: 24px;
}
.blog-cards_info {
  padding: 20px 0;
  text-align: left;
}
.blog-cards_info p {
  margin: 10px 0;
}
.blog-cards .arrow-button {
  position: absolute;
  bottom: 32px;
  right: 32px;
  pointer-events: none;
}
@media (max-width: 1000px) {
  .blog-cards .arrow-button {
    bottom: 8px;
    right: 8px;
    transform: scale(0.8);
  }
}
.blog-cards:hover img {
  transform: scale(1.2);
}
.blog-cards:hover .arrow-button {
  color: white !important;
}
.blog-cards:hover .arrow-button::after {
  transform: scale(1.2);
}
.blog-cards:hover .arrow-button > svg {
  transform: rotate(45deg);
}

.forms {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  margin: 8px 0 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.forms_inputs {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  font-family: inherit;
  padding: 0;
  width: 100%;
  margin: 8px 0;
  font-size: 1.2rem;
  color: #707070;
  display: block;
  border: none;
  border-bottom: 1px solid #707070;
}
.forms_inputs.cod {
  width: 20%;
}
.forms_inputs.phone {
  width: 75%;
}
.forms_inputs.mid {
  width: 48%;
}
.forms textarea {
  height: 90px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  font-family: inherit;
  font-size: 1.2rem;
  padding: 5px 0;
  border-bottom: 1px solid #707070;
  color: #707070;
  resize: none;
}
.forms_legals {
  margin: 4px 0 12px;
  font-size: 1rem;
  color: #707070;
  display: flex;
  align-items: center;
  gap: 4px;
}
.forms_legals input[type=checkbox] {
  position: relative;
  width: 12px;
  height: 12px;
  min-width: 12px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 1px solid #707070;
}
.forms_legals input[type=checkbox]:checked::after {
  content: "✓";
  position: absolute;
  left: 50%;
  top: 55%;
  transform: translate(-50%, -50%);
  color: #7A7A7A;
}
.forms input[type=number]::-webkit-inner-spin-button,
.forms input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.forms input[type=number] {
  -moz-appearance: textfield;
}

.forms_caucion {
  margin: auto;
  background-color: #FCFBF6;
  border-radius: 32px;
  padding: 48px;
  max-width: 720px;
  color: var(--color-text-card);
  margin-top: 32px;
  position: relative;
}
@media (max-width: 800px) {
  .forms_caucion {
    padding: 30px 20px;
  }
}
.forms_caucion.floating {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  left: 0;
  display: flex;
  align-items: center;
  opacity: 0;
  pointer-events: none;
  z-index: -1;
  transition: ease-in-out 0.3s;
}
.forms_caucion.floating .h5 {
  margin-bottom: 16px;
}
.forms_caucion.floating .flexCenterRadio {
  display: flex;
  align-items: center;
}
.forms_caucion.floating .flexCenterRadio label {
  margin-right: 24px;
}
.forms_caucion.floating input[type=radio] {
  width: 15px;
  height: 15px;
  border-radius: 100%;
  margin-right: 8px;
  border: 1px solid var(--color-text-card);
  position: relative;
}
.forms_caucion.floating input[type=radio]:checked::after {
  width: 9px;
  height: 9px;
  border-radius: 100%;
  background-color: var(--color-text-card);
  content: "";
  position: absolute;
  left: 2px;
  top: 2px;
}
.forms_caucion.floating select:invalid {
  color: #707070;
}
.forms_caucion.floating.openform {
  opacity: 1;
  pointer-events: initial;
  z-index: 2;
}
.forms_caucion.floating .forms {
  width: 100%;
  max-width: 570px;
  margin: auto;
}
.forms_caucion.floating .forms .primary-button {
  width: 100%;
  max-width: 200px;
  margin: auto;
}
.forms_caucion.floating .block-input {
  width: 100%;
  margin: 24px;
  flex-wrap: wrap;
}
@media (max-width: 800px) {
  .forms_caucion.floating .block-input {
    margin: 0px;
    flex-direction: row;
  }
}
.forms_caucion.floating .block-input .full {
  width: 100%;
  margin-top: 16px;
}
.forms_caucion.floating .block-input .mid {
  width: 48%;
  margin-top: 16px;
}
.forms_caucion.floating .block-input.cerrar {
  justify-content: center;
  color: var(--color-text-card);
  text-decoration: underline;
}
.forms_caucion.floating .block-input .close {
  cursor: pointer;
}
.forms_caucion.floating input {
  border-bottom: 1px solid var(--color-text-card);
  color: var(--color-text-card);
}
.forms_caucion.floating .clone {
  display: flex;
  width: 100%;
  justify-content: space-between;
}
.forms_caucion.floating .clone.disabled {
  opacity: 0.3;
  pointer-events: none;
}
.forms_caucion .h5 {
  font-weight: 700;
}
.forms_caucion .block-input {
  margin: 32px;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 800px) {
  .forms_caucion .block-input {
    margin: 20px 10px;
    flex-direction: column;
  }
}
.forms_caucion .block-input.centered {
  justify-content: center;
  align-items: center;
}
.forms_caucion .block-input.centered .h5 {
  text-align: center;
}
.forms_caucion .block-input p {
  display: flex;
  align-items: flex-start;
  gap: 4px;
  font-size: 1.4rem;
  margin: 8px 0;
}
.forms_caucion .block-input p small {
  color: var(--color-theme);
}
.forms_caucion .block-input p input[type=checkbox] {
  position: relative;
  width: 12px;
  height: 12px;
  min-width: 12px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
  margin-top: 2px;
  padding: 0;
  background: transparent;
  border: 1px solid var(--color-text-card);
}
.forms_caucion .block-input p input[type=checkbox]:checked::after {
  content: "✓";
  position: absolute;
  left: 50%;
  top: 55%;
  transform: translate(-50%, -50%);
  color: var(--color-text-card);
}
.forms_caucion .block-input .values {
  display: flex;
  flex-shrink: 0;
  max-width: 300px;
  gap: 20px;
}
.forms_caucion .block-input .values .col {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0px;
}
.forms_caucion .block-input .values .col .inputContent {
  position: relative;
  margin-bottom: 4px;
}
.forms_caucion .block-input .values .col .inputContent::after {
  content: "$";
  position: absolute;
  left: 0;
  top: 2px;
  font-size: 1.4rem;
  color: var(--color-text-card);
}
.forms_caucion .block-input .values .col .inputContent input[type=number] {
  color: var(--color-text-card);
  background: transparent;
  padding: 0;
  padding-left: 12px;
  font-size: 1.4rem;
  max-width: 110px;
  font-family: inherit;
}
.forms_caucion .block-input .values .col .inputContent input[type=number]:not([disabled]) {
  border-bottom: 1px solid var(--color-text-card);
}
.forms_caucion .block-input .values .col .inputContent input.error {
  background-color: red;
}
.forms_caucion .block-input .values input[type=number]::-webkit-inner-spin-button,
.forms_caucion .block-input .values input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.forms_caucion .block-input .values input[type=number] {
  -moz-appearance: textfield;
}
.forms_caucion .block-input select {
  margin-top: 4px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  display: block;
  min-width: 220px;
  font-size: 1.4rem;
  color: var(--color-text-card);
  font-family: inherit;
  background-color: transparent;
  border-bottom: 1px solid var(--color-text-card);
  padding-right: 16px;
}
.forms_caucion .block-input .price {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.forms_caucion .block-input .price h4 {
  font-weight: 700;
  margin: 2px 0;
  text-align: center;
}
.forms_caucion .block-input .price h4[data-rel=transferencia] {
  display: none;
}
.forms_caucion .block-input .price small {
  font-size: 1rem;
  text-align: center;
  margin-bottom: 16px;
}
.forms_caucion .block-input .price.transferencia h4[data-rel=mercado_pago] {
  color: var(--color-theme);
  transform: scale(0.7);
  text-decoration: line-through;
}
.forms_caucion .block-input .price.transferencia h4[data-rel=transferencia] {
  display: block;
}
.forms_caucion .block-input .price #sendEmail {
  cursor: pointer;
  font-weight: 700;
  font-size: 1.4rem;
  text-decoration: underline;
  margin: 16px 0;
  letter-spacing: -0.03em;
  color: var(--color-text-card);
  font-family: inherit;
}
.forms_caucion .block-input .price .required_fee {
  margin: 0;
}
.forms_caucion .range_input {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
  justify-content: space-between;
  color: var(--color-text-card);
  max-width: 300px;
}
.forms_caucion .range_input span {
  padding: 0 4px;
  cursor: pointer;
}
.forms_caucion .range_input input[type=range] {
  -webkit-appearance: none;
  width: 100%;
  background: transparent;
}
.forms_caucion .range_input input[type=range]::-webkit-slider-runnable-track {
  height: 5px;
  border-radius: 20px;
  background: var(--color-text-card);
}
.forms_caucion .range_input input[type=range]::-moz-range-track {
  height: 5px;
  border-radius: 20px;
  background: var(--color-text-card);
}
.forms_caucion .range_input input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  border: none;
  background-color: var(--color-text-card);
  transform: translateY(-7px);
}
.forms_caucion .range_input input[type=range]::-moz-range-thumb {
  -webkit-appearance: none;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  border: none;
  background-color: var(--color-text-card);
}
.forms_caucion #contentClones {
  width: 100%;
}
.forms_caucion .btn-clone {
  text-decoration: underline;
  cursor: pointer;
  display: none;
  margin-top: 10px;
}

/*
return value.replace(/\D/g, "")
        .replace(/([0-9])([0-9]{3})$/, '$1.$2')
        .replace(/\B(?=(\d{3})+(?!\d)\.?)/g, ".");
*/
.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin: 20px 0;
  max-width: 520px;
}
.tags span {
  height: 60px;
  display: flex;
  align-items: center;
  border-radius: 35px;
  background-color: white;
  color: #863DFF;
  padding: 0 30px;
  font-size: 2rem;
}

.scroll-horizontal {
  height: 300vh;
  position: relative;
  margin: 50px 0;
}
.scroll-horizontal .fixed-box {
  height: 100vh;
  width: 100%;
  display: flex;
  align-items: center;
  position: relative;
  top: 0;
  width: 100%;
}
.scroll-horizontal .fixed-box svg {
  height: 100vh;
  display: block;
  margin: auto;
  opacity: 0.09;
}
.scroll-horizontal .fixed-box .pils-content {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  z-index: 2;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 30px;
}
.scroll-horizontal .fixed-box .pils-content .pil {
  transform: translateX(40vw);
  height: 80px;
  padding: 0 60px;
  border-radius: 50px;
  color: #FFF;
  display: flex;
  align-items: center;
  font-size: 40px;
  background-color: #863DFF;
  white-space: nowrap;
}
.scroll-horizontal .fixed-box .pils-content .pil.gap {
  min-width: 200px;
  background-color: transparent;
}
.scroll-horizontal.primaryColor .fixed-box .pils-content .pil {
  background-color: #2719E6;
}

#home .banner-hand {
  margin-top: 0;
}
#home .home-product .h3 {
  max-width: 730px;
  text-align: center;
  margin: 60px auto;
  color: #2719E6;
}
#home .home-product .wrap-slider {
  position: relative;
}
@media (max-width: 1000px) {
  #home .home-product .wrap-slider {
    padding-bottom: 60px;
    margin-bottom: 30px;
  }
}
#home .home-product .threecards-button-next, #home .home-product .threecards-button-prev {
  background-color: #35BEBB;
}
#home .home-product .threecards-pagination .swiper-pagination-bullet {
  background-color: #35BEBB;
}
#home .block-grupo-st {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  min-height: 560px;
  overflow: hidden;
}
#home .block-grupo-st::after {
  content: "";
  position: absolute;
  width: 100vw;
  height: 100vw;
  top: -50vw;
  left: 0;
  z-index: -1;
  background: radial-gradient(circle, rgba(228, 213, 253, 0.71) 6%, rgba(228, 213, 253, 0.69) 26%, rgba(205, 243, 255, 0.1) 47%, rgba(255, 255, 255, 0) 69%);
}
@media (max-width: 1000px) {
  #home .block-grupo-st {
    padding-top: 40px;
    padding-bottom: 40px;
    margin-bottom: 0;
    border-radius: 30px 30px 60px 60px;
  }
}
#home .block-grupo-st .title {
  display: flex;
  align-items: center;
  text-align: center;
  margin-bottom: 32px;
  gap: 20px;
}
#home .block-grupo-st .title h3 {
  color: #2719E6;
}
@media (max-width: 1000px) {
  #home .block-grupo-st .title {
    flex-direction: column;
  }
}
#home .block-grupo-st p {
  color: #465260;
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
#home .block-grupo-st .logos-group {
  display: flex;
  align-items: center;
  margin-top: 48px;
}
#home .block-grupo-st .logos-group img {
  display: block;
  height: 28px;
}
@media (max-width: 1000px) {
  #home .block-grupo-st .logos-group {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
  }
}

#productos .container-celular {
  display: flex;
  justify-content: space-between;
  width: 100%;
  position: relative;
}
#productos .suggestions {
  position: absolute;
  top: 100%;
  background-color: white;
  padding: 5px;
  max-height: 200px;
  overflow-y: scroll;
  z-index: 1;
}
#productos .suggestions p {
  font-size: 1.2rem;
  cursor: pointer;
}
#productos .intro-products {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 24px 0;
  gap: 32px;
  color: var(--color-theme);
}
#productos .intro-products .image-product {
  width: 170px;
}
#productos .intro-products .image-product img {
  display: block;
  max-width: 100%;
}
#productos .intro-products .title-product {
  max-width: 430px;
}
#productos .intro-products.product-caucion {
  color: var(--color-text-card);
  text-align: center;
}
#productos .intro-products.product-caucion .title-product {
  max-width: 100%;
  gap: 20px;
}
@media (max-width: 1000px) {
  #productos .intro-products {
    flex-direction: column;
    align-items: center;
  }
}
#productos .general-cards:not(.plans) {
  color: var(--color-text-card);
  background: var(--color-bg-card);
}
#productos .planes-products {
  padding: 48px 0;
}
#productos .planes-products > h3 {
  text-align: center;
  margin-bottom: 32px;
  color: #2F347E;
}
#productos .formulario-alquileres {
  margin: 80px 0;
}
#productos .formulario-alquileres > h3, #productos .formulario-alquileres > small {
  color: var(--color-text-card);
  text-align: center;
  display: block;
}
#productos .title-benefits-caución {
  color: var(--color-text-card);
  text-align: center;
  margin-bottom: 32px;
}
@media (max-width: 1000px) {
  #productos .hero-container {
    min-height: 780px;
    height: 100vh;
  }
  #productos .grid-masonry,
  #productos .grid-masonry-combos {
    overflow: scroll;
    padding-bottom: 20px;
    display: flex;
    width: calc(100% + 20px);
  }
  #productos .grid-masonry .general-cards,
  #productos .grid-masonry-combos .general-cards {
    min-width: 300px;
  }
  #productos .grid-products {
    overflow: scroll;
    padding-top: 20px;
    padding-bottom: 50px;
    margin: 0;
  }
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

.msg-thanks {
  background-color: white;
  background-color: white;
  border-radius: 30px;
  padding: 30px;
  margin-bottom: 30px;
}

#productos-page {
  color: #35BEBB;
}
#productos-page .grid-products {
  grid-row-gap: 30px;
}
#productos-page .grid-general .general-cards {
  background-color: #EFFBF8;
}
#productos-page .intro-products-page h2 {
  max-width: 720px;
  margin: 20px auto 60px;
  text-align: center;
}
#productos-page .section-combos {
  color: #01B3B5;
  margin: 100px 0 150px;
}
#productos-page .section-combos h3 {
  max-width: 500px;
  margin: 20px auto 60px;
  text-align: center;
}
@media (max-width: 1000px) {
  #productos-page .hero-banners_internal {
    height: 100vh;
  }
  #productos-page .hero-banners_internal .hero-container {
    justify-content: center !important;
  }
}

#mediosPagos {
  padding-top: 1px;
}
#mediosPagos .intro {
  margin-top: 100px;
}
#mediosPagos .intro h2.h3 {
  text-align: center;
  margin-bottom: 50px;
}

#template_1 {
  color: #863DFF;
  padding-top: 1px;
}
#template_1 .intro {
  margin-top: 40px;
}
#template_1 .intro .h3 {
  text-align: center;
  margin-bottom: 60px;
}
#template_1 .content-button {
  margin: 60px 0 120px;
  text-align: center;
}
#template_1 .legals {
  color: #BBBBBB;
}
#template_1 .legals small {
  font-size: 11px;
}

#template_2 {
  color: #2719E6;
  padding-top: 1px;
}
#template_2 .intro {
  margin-top: 40px;
}
#template_2 .intro .h3 {
  text-align: center;
  margin-bottom: 60px;
}
#template_2 .intro .bajada {
  max-width: 900px;
  text-align: center;
  font-size: 20px;
  margin: auto;
}
#template_2 .grid-cards-4 {
  margin: 50px 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
#template_2 .grid-cards-4_card {
  width: 100%;
  aspect-ratio: 10/14;
  border-radius: 40px;
  border: 2px solid #2719E6;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 30px;
  text-align: center;
  padding: 30px;
}
#template_2 .content-button {
  margin: 60px 0 120px;
  text-align: center;
}
#template_2 .legals {
  color: #BBBBBB;
}
#template_2 .legals small {
  font-size: 11px;
}

#template_comercio .hero-banners_internal:not(.clean)::after {
  opacity: 0;
}
#template_comercio .table {
  padding: 50px 0;
}
#template_comercio .table h3 {
  text-align: center;
  margin-bottom: 60px;
}
#template_comercio .table small {
  display: block;
  text-align: center;
}
#template_comercio .table-comercio {
  width: 100%;
  border-collapse: collapse;
}
#template_comercio .table-comercio th, #template_comercio .table-comercio td {
  padding: 10px;
  text-align: left;
  border-bottom: 1px solid #ddd;
}
#template_comercio .table-comercio th {
  background-color: #2719E6;
  color: white;
}
#template_comercio .table-comercio {
  max-width: 1000px;
  margin: 50px auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 40px;
       column-gap: 40px;
  row-gap: 10px;
  overflow: hidden;
}
#template_comercio .table-comercio_row {
  padding: 14px 0;
}
#template_comercio .table-comercio_row::before {
  content: "";
  display: block;
  width: 130%;
  height: 1px;
  background-color: #ddd;
  transform: translateY(-14px);
}
#template_comercio .table-comercio_row_title {
  min-height: 50px;
}
#template_comercio .content-button {
  margin: 60px 0 120px;
  text-align: center;
}
#template_comercio .legals {
  color: #BBBBBB;
}
#template_comercio .legals small {
  font-size: 11px;
}

#productores {
  --color-theme:#706F70;
  color: var(--color-theme);
}
#productores .container-celular {
  display: flex;
  justify-content: space-between;
  width: 100%;
  position: relative;
}
#productores .suggestions {
  position: absolute;
  top: 100%;
  background-color: white;
  padding: 5px;
  max-height: 200px;
  overflow-y: scroll;
  z-index: 1;
}
#productores .suggestions p {
  font-size: 1.2rem;
  cursor: pointer;
}
#productores .intro-productores {
  text-align: center;
  margin-bottom: 56px;
}
#productores .intro-productores h3 {
  margin: 0 auto 48px;
}
#productores .intro-productores .paragraph {
  max-width: 880px;
  margin: auto;
}
#productores .intro-productores .grid-productores {
  margin: 64px 0 32px;
}
#productores .intro-productores .grid-productores .general-cards {
  background-color: #F4F3F3;
  min-height: 312px;
  text-align: left;
  background-size: cover;
  background-position: center;
}
#productores .seguros-list-slider {
  margin: 64px 0;
}
#productores .seguros-list-slider .title-section {
  max-width: 760px;
  margin: auto;
  text-align: center;
  margin-bottom: 32px;
}
#productores .seguros-list-slider .wrap-slider {
  position: relative;
}
@media (max-width: 1000px) {
  #productores .seguros-list-slider .wrap-slider {
    padding-bottom: 50px;
  }
}
#productores .seguros-list-slider .general-cards {
  height: 540px;
}
#productores .seguros-list-slider .general-cards p.small {
  font-size: 1.8rem;
  margin-top: 8px;
}
#productores .seguros-list-slider .threecards-button-next,
#productores .seguros-list-slider .threecards-button-prev,
#productores .seguros-list-slider .swiper-pagination-bullet {
  background-color: var(--color-theme);
}
#productores .video-empresas {
  height: 80vh;
  max-height: 800px;
  position: relative;
  margin-bottom: 64px;
}
#productores .video-empresas .main-video {
  height: 100%;
  width: 100vw;
  background-color: blue;
  position: absolute;
  left: 50%;
  border-radius: 32px;
  transform: translateX(-50%);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#productores .video-empresas .primary-button {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  transform: translate(-50%, -50%);
}
#productores .accordions-content .accordion-group .ac-trigger {
  color: #35BEBB;
}
#productores .general-cards.products {
  align-items: flex-start;
}
#productores .general-cards.products p {
  font-size: 1.8rem;
}
#productores .general-cards.products .foo {
  margin-top: auto;
  margin-bottom: 24px;
}
@media (max-width: 1000px) {
  #productores .hero-container {
    min-height: 780px;
    height: 100vh;
  }
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

#blog {
  padding-top: 1px;
}
#blog .title-section {
  margin-top: 150px;
  color: #2F347E;
  margin-left: 32px;
}
#blog .hero-blog {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  margin: 32px 0;
}
#blog .hero-blog .news-big {
  grid-area: 1/1/4/2;
}
#blog .hero-blog .news-small1 {
  grid-area: 1/2/2/3;
}
#blog .hero-blog .news-small2 {
  grid-area: 2/2/3/3;
}
#blog .hero-blog .news-small3 {
  grid-area: 3/2/4/3;
}
#blog .hero-blog .blog-cards_image img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 1000px) {
  #blog .hero-blog {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 0 14px;
  }
}
#blog .intro-blog {
  text-align: center;
  margin: 64px 0;
}
#blog .intro-blog h3 {
  color: #2F347E;
}
#blog .intro-blog .filters {
  color: #863DFF;
  max-width: 960px;
  margin: 32px auto;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}
@media (max-width: 1000px) {
  #blog .intro-blog .filters {
    padding-bottom: 6px;
    overflow: hidden;
    flex-wrap: nowrap;
    white-space: nowrap;
    align-items: flex-start;
    justify-content: flex-start;
    overflow-x: scroll;
  }
}
#blog .intro-blog .filters .bt-filter {
  height: 48px;
  display: flex;
  color: inherit;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  border-radius: 24px;
  font-size: 1.8rem;
  line-height: 1;
  transition: cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  border: 2px solid #863DFF;
}
#blog .intro-blog .filters .bt-filter:hover, #blog .intro-blog .filters .bt-filter.active {
  color: white;
  background-color: #863DFF;
}
#blog .intro-blog#categorias {
  padding-top: 70px;
}
#blog .wrap-category {
  margin: 80px auto;
}
#blog .wrap-category .head-category {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 24px;
}
#blog .wrap-category .head-category a {
  font-size: 1.8rem;
}
#blog .wrap-category.salud-bienestar {
  color: #57C787;
}
#blog .wrap-category.lifestyle {
  color: #E8EDF7;
}
#blog .wrap-category.educacion {
  color: #FBAB48;
}
#blog .wrap-category.familia-hogar {
  color: #2F6DFB;
}
#blog .wrap-category.planificacion-financiera {
  color: #CDF3FF;
}
#blog .wrap-category.sustentabilidad {
  color: #7959EE;
}
@media (max-width: 1000px) {
  #blog .wrap-category {
    margin: 50px auto;
    padding: 0 14px;
  }
  #blog .wrap-category .head-category {
    gap: 10px;
    flex-direction: column;
    align-items: flex-start;
  }
}
#blog-single {
  padding-top: 1px;
}
#blog-single .wrap-category {
  margin: 64px auto;
  max-width: 1200px;
}
#blog-single .wrap-category h3 {
  margin-bottom: 32px;
}
@media (max-width: 1000px) {
  #blog-single .wrap-category {
    padding: 0 14px;
  }
}
#blog-single .container.small {
  color: #863DFF;
}
#blog-single .container.small .top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 40px;
}
#blog-single .container.small .tag {
  display: flex;
  align-items: center;
  gap: 4px;
}
#blog-single .container.small .h2 {
  margin: 16px 0 32px;
}
#blog-single .container.small h2 {
  font-weight: 700;
  font-size: 2.2rem;
  margin: 24px 0;
}
#blog-single .container.small h3, #blog-single .container.small h4, #blog-single .container.small h5, #blog-single .container.small h6 {
  font-weight: 400;
  margin: 24px 0;
  font-size: 2rem;
  line-height: 1.375;
}
#blog-single .container.small p {
  font-size: 1.6rem;
  line-height: 1.375;
  margin: 16px 0;
}
#blog-single .container.small a {
  color: #863DFF;
  text-decoration: underline;
}
#blog-single .container.small .wp-block-list {
  padding-left: 16px;
}
#blog-single .container.small .wp-block-list li {
  list-style: disc;
}
#blog-single .container.small figure.wp-block-image {
  display: block;
  margin: 32px 0;
  border-radius: 32px;
  overflow: hidden;
}
#blog-single .container.small figure.wp-block-image img {
  display: block;
  width: 100%;
  max-height: 400px;
  -o-object-fit: cover;
     object-fit: cover;
}
#blog-single .container.small blockquote {
  padding-left: 54px;
  margin: 54px 0;
  border-left: 3px solid;
}
#blog-single .container.small blockquote p {
  font-size: 2.4rem;
}
@media (max-width: 1000px) {
  #blog-single .container.small blockquote {
    padding-left: 30px;
    margin: 30px 0;
  }
}
#blog-single .container.small .share-social-news {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 1.6rem;
}
#blog-single .container.small .share-social-news ul {
  display: flex;
  align-items: center;
  gap: 8px;
}
#blog-single .related-posts .blog-cards_image img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#legales .main-content {
  padding-top: 200px;
  color: #2719E6;
}
#legales .main-content .intro-legales {
  margin: 80px 0;
  display: flex;
  gap: 40px;
}
#legales .main-content .intro-legales .aside {
  min-width: 300px;
  position: sticky;
  top: 0px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  font-size: 18px;
}
#legales .main-content .intro-legales .aside .active {
  font-weight: 800;
}
#legales .form-contact {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin: 40px 0;
}
#legales .form-contact input, #legales .form-contact textarea, #legales .form-contact select {
  border: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  resize: none;
  width: calc(50% - 10px);
  font-family: inherit;
  height: 40px;
  border-bottom: 2px solid #2719E6;
  font-size: 1.6rem;
  color: #2719E6;
}
#legales .form-contact input::-moz-placeholder, #legales .form-contact textarea::-moz-placeholder, #legales .form-contact select::-moz-placeholder {
  color: #2719E6;
}
#legales .form-contact input::placeholder, #legales .form-contact textarea::placeholder, #legales .form-contact select::placeholder {
  color: #2719E6;
}
#legales .form-contact input:valid, #legales .form-contact textarea:valid, #legales .form-contact select:valid {
  border-color: #863DFF;
  color: #863DFF;
}
#legales .form-contact textarea {
  height: 120px;
  width: 100%;
}

#comercio .intro {
  padding: 50px 0;
}
#comercio .intro h2 {
  text-align: center;
  margin-bottom: 60px;
}
#comercio .content-button {
  margin: 60px 0 120px;
  text-align: center;
}

#proposito .hero-banners_home {
  margin-bottom: 80px;
}
#proposito .hero-banners_home h1 {
  width: 720px;
}
@media (max-width: 1000px) {
  #proposito .hero-banners_home .hero-container {
    align-items: center;
  }
  #proposito .hero-banners_home .hero-container h1 {
    width: 100%;
    padding: 0;
  }
}
#proposito .container.proposito {
  max-width: 1200px;
}
#proposito .container.proposito .banner-hand {
  padding-top: 40px;
  padding-bottom: 40px;
}
#proposito .video-main {
  max-width: 100%;
  border-radius: 32px;
  margin: auto;
  display: block;
  margin-bottom: 32px;
}
#proposito .proyectos-content {
  padding: 64px 0;
}
#proposito .proyectos-content h2 {
  color: #01B3B5;
  text-align: center;
  margin-bottom: 48px;
}
@media (max-width: 1000px) {
  #proposito .proyectos-content {
    padding: 30px 14px;
  }
}
#proposito .current-projects {
  min-height: 750px;
  height: 100vh;
  position: relative;
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin-bottom: 32px;
}
#proposito .current-projects .container {
  z-index: 2;
}
#proposito .current-projects .bgVideo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  opacity: 0;
  transition: ease-out 0.3s;
  pointer-events: none;
}
#proposito .current-projects .bgVideo video {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 1000px) {
  #proposito .current-projects .bgVideo {
    display: none;
  }
}
#proposito .current-projects .bgMask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 4;
  opacity: 0;
  transition: ease-out 0.3s;
  pointer-events: none;
}
#proposito .current-projects .bgMask .right-png {
  position: absolute;
  height: 100%;
  bottom: 0;
  right: 40%;
}
#proposito .current-projects .bgMask .right-png img {
  display: block;
  height: 100%;
}
#proposito .current-projects .bgMask .bottom-png {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
}
#proposito .current-projects .bgMask .bottom-png img {
  display: block;
  width: 100%;
}
#proposito .current-projects .bgMask.first .right-png {
  left: 40%;
  right: auto;
}
@media (max-width: 1000px) {
  #proposito .current-projects .bgMask {
    display: none;
  }
}
@media (min-width: 1000px) {
  #proposito .current-projects .grid-proyectos:hover .general-cards {
    opacity: 0;
  }
  #proposito .current-projects .grid-proyectos:hover .general-cards:hover {
    z-index: 3;
    opacity: 1;
  }
  #proposito .current-projects .grid-proyectos:hover .general-cards:hover + .bgMask {
    opacity: 1;
  }
  #proposito .current-projects .grid-proyectos:hover + .bgVideo {
    opacity: 1;
  }
}
#proposito .ser-parte {
  text-align: center;
  margin-bottom: 56px;
}
#proposito .ser-parte h3 {
  color: #01B3B5;
  max-width: 340px;
  margin: auto;
  margin-bottom: 32px;
}
#proposito.single {
  position: relative;
}
#proposito.single .hero-banners::after {
  background: linear-gradient(0deg, rgb(235, 249, 250) 8%, rgba(235, 249, 250, 0.8) 16%, rgba(0, 0, 0, 0.3) 38%);
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  top: 0;
  left: 0;
}
#proposito.single .h2 {
  margin-top: 32px;
}
#proposito.single .container.no-margin {
  margin: 0;
}
#proposito.single .grid-proposito {
  overflow: hidden;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 1000px) {
  #proposito.single .grid-proposito {
    flex-direction: column;
    gap: 5px;
    max-width: 75%;
    padding-left: 14px;
  }
}
#proposito.single .grid-proposito .cols {
  width: calc(50% - 16px);
}
@media (max-width: 1000px) {
  #proposito.single .grid-proposito .cols {
    display: none;
  }
}
#proposito.single .grid-proposito .general-cards {
  background-color: white;
  background-size: cover;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
  padding-top: 100px;
  padding-bottom: 100px;
  margin-bottom: 16px;
}
#proposito.single .grid-proposito .general-cards h3 {
  color: #35BEBB;
  margin-bottom: 16px;
}
#proposito.single .grid-proposito .general-cards p {
  color: #7A7A7A;
  font-size: 1.8rem;
}
#proposito.single .grid-proposito .general-cards.image {
  aspect-ratio: 4/4;
  position: relative;
  z-index: 1;
}
#proposito.single .numbers {
  color: #465260;
  font-family: "Cocogoose Pro", sans-serif;
  padding: 20px 0;
}
#proposito.single .numbers strong {
  font-size: 9rem;
  display: block;
  line-height: 1;
}
#proposito.single .numbers small {
  font-size: 3rem;
}
@media (max-width: 1000px) {
  #proposito.single .numbers {
    padding: 10px 14px;
  }
  #proposito.single .numbers strong {
    font-size: 6rem;
  }
  #proposito.single .numbers small {
    font-size: 2rem;
  }
}
#proposito.single .grid-combos {
  margin: 80px 0;
}
@media (max-width: 1000px) {
  #proposito.single .grid-combos {
    margin: 50px 0;
  }
}
#proposito.single .next-proyect {
  margin: 80px 0;
  max-width: 400px;
}
#proposito.single .next-proyect > * {
  font-family: "Cocogoose Pro", sans-serif;
  line-height: 1.23;
}
#proposito.single .next-proyect h4 {
  margin-bottom: 40px;
}
#proposito.single .next-proyect p {
  margin: 24px 0;
}
#proposito.single .next-proyect .primary-button {
  margin-top: 28px;
}
@media (max-width: 1000px) {
  #proposito.single .next-proyect {
    margin: 50px 14px;
    max-width: 75%;
  }
}
#proposito.single .general-cards.home {
  height: 245px;
  margin: 80px 0;
}
@media (max-width: 1000px) {
  #proposito.single .general-cards.home {
    margin: 50px 14px;
  }
}
#proposito.single .related {
  margin-bottom: 80px;
}
#proposito.single .related_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #7959EE;
  margin-bottom: 24px;
}
@media (max-width: 1000px) {
  #proposito.single .related {
    padding: 14px;
  }
  #proposito.single .related_head {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}
#proposito.single .bgMaskProp {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 1;
  pointer-events: none;
}
#proposito.single .bgMaskProp.sticky {
  position: absolute;
}
#proposito.single .bgMaskProp.sticky .right-png {
  border-radius: 0 0 60px 0;
}
#proposito.single .bgMaskProp.sticky .bottom-png {
  border-radius: 0 0 60px 60px;
}
#proposito.single .bgMaskProp .right-png {
  overflow: hidden;
  position: absolute;
  height: 100%;
  bottom: 0;
  right: 0;
}
#proposito.single .bgMaskProp .right-png img {
  display: block;
  height: 100%;
}
@media (max-width: 1000px) {
  #proposito.single .bgMaskProp .right-png {
    height: auto;
    width: 100%;
  }
  #proposito.single .bgMaskProp .right-png img {
    display: block;
    height: auto;
    width: 100%;
    transform: translateX(55%);
  }
}
#proposito.single .bgMaskProp .bottom-png {
  overflow: hidden;
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
}
#proposito.single .bgMaskProp .bottom-png img {
  display: block;
  width: 100%;
}
#proposito.se-parte .grid-proposito {
  overflow: hidden;
  margin-top: 240px;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 1000px) {
  #proposito.se-parte .grid-proposito {
    flex-direction: column;
    gap: 5px;
    max-width: 90%;
    padding-left: 14px;
    margin-top: 140px;
  }
}
#proposito.se-parte .grid-proposito .cols {
  width: calc(50% - 16px);
}
@media (max-width: 1000px) {
  #proposito.se-parte .grid-proposito .cols {
    display: none;
  }
}
#proposito.se-parte .grid-proposito .general-cards {
  background-color: white;
  background-size: cover;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
  padding-top: 100px;
  padding-bottom: 100px;
  margin-bottom: 16px;
}
#proposito.se-parte .grid-proposito .general-cards h3 {
  color: #35BEBB;
  margin-bottom: 16px;
}
#proposito.se-parte .grid-proposito .general-cards p {
  color: #7A7A7A;
  font-size: 1.8rem;
}
#proposito.se-parte .grid-proposito .general-cards.image {
  aspect-ratio: 4/4;
  position: relative;
  z-index: 1;
}
#proposito.se-parte .grid-proposito .general-cards.bgColor {
  background-color: #35BEBB;
  color: white;
}
#proposito.se-parte .grid-proposito .general-cards.bgColor h3, #proposito.se-parte .grid-proposito .general-cards.bgColor p {
  color: white;
}
#proposito.se-parte .general-cards.home {
  height: 245px;
  margin: 80px 0;
}
@media (max-width: 1000px) {
  #proposito.se-parte .general-cards.home {
    margin: 20px 0;
  }
}
#proposito.se-parte .general-cards.home > .h4 {
  max-width: 100%;
}
@media (max-width: 1000px) {
  #proposito.se-parte .general-cards.home > .h4 {
    max-width: 50%;
  }
  #proposito.se-parte .grid-home {
    padding: 0 14px;
    margin: 50px 0;
  }
}

#contacto .container-celular {
  display: flex;
  justify-content: space-between;
  width: 100%;
  position: relative;
}
#contacto .suggestions {
  position: absolute;
  top: 100%;
  background-color: white;
  padding: 5px;
  max-height: 200px;
  overflow-y: scroll;
  z-index: 1;
}
#contacto .suggestions p {
  font-size: 1.2rem;
  cursor: pointer;
}
#contacto .main-content {
  background-color: transparent;
  padding-top: 180px;
}
#contacto .main-content > .title, #contacto .main-content > .content {
  color: #2F347E;
  margin: auto;
  max-width: 460px;
  text-align: center;
  margin-bottom: 10px;
}
#contacto .main-content .hero-form {
  margin: 32px auto 0;
}
#contacto .main-content .hero-form .primary-button {
  width: 100%;
}

html {
  font-size: clamp(5px, 10px, 12 * 100vw / var(--size));
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
  margin: 0 !important;
}

html, body {
  width: 100%;
  font-family: "Onest", sans-serif;
  margin: 0;
  padding: 0;
  background-color: #2719E6;
}

.main {
  background-color: white;
  position: relative;
  border-radius: 0 0 60px 60px;
  font-size: 1.6rem;
  overflow-x: hidden;
}
.main.comercio {
  background-color: transparent;
  color: white;
}
.main.comercio .main-content {
  background-color: transparent;
}
.main > section {
  padding-bottom: 36px;
}
@media (max-width: 1000px) {
  .main > section {
    padding: 1px 0px;
  }
  .wrap-slider {
    width: calc(100% + 20px);
  }
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  outline: none;
  font-weight: 400;
  list-style: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  font-family: inherit;
}

strong {
  font-weight: 700;
}

a {
  font: inherit;
  text-decoration: none;
  color: inherit;
}

p {
  font-size: 1.8rem;
  line-height: 1.4;
}

.container {
  width: calc(100% - 20px);
  max-width: 1280px;
  margin: auto;
}
.container.small {
  max-width: 1000px;
}
.container.mini {
  max-width: 700px;
}
.container.mini960 {
  max-width: 960px;
}
@media (max-width: 1000px) {
  .container {
    width: 100%;
  }
}

.main-content {
  background-color: white;
  border-radius: 30px;
  padding: 50px;
  position: relative;
  z-index: 1;
}
.main-content:not(.overlaping) {
  margin-bottom: 36px;
}
.main-content.overlaping {
  transform: translateY(-30px);
}
@media (max-width: 1000px) {
  .main-content {
    padding: 14px;
    overflow: hidden;
  }
}

a, button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  border: none;
  font-family: inherit;
  padding: 0;
  margin: 0;
}
a.is-active, button.is-active {
  pointer-events: none;
}

[data-router-view] {
  position: relative;
  width: 100%;
}

.swiper .swiper-slide {
  overflow: initial !important;
}

.is-only-mobile {
  display: none;
}
@media (max-width: 1000px) {
  .is-only-mobile {
    display: block;
  }
}

.is-only-desktop {
  display: block;
}
@media (max-width: 1000px) {
  .is-only-desktop {
    display: none;
  }
}

#errorMessage {
  color: red;
  line-height: 1.2;
  font-size: 1.4rem;
  padding-top: 10px;
}

.colorPrimary {
  color: #2719E6;
}

.colorSecondary {
  color: #863DFF;
}

/*# sourceMappingURL=app.css.map*/