/* acceso */

section.acceso {
  background-color: #ffffff;
  padding: 64px 0;
}

section.acceso .acceso-item {
  display: flex;
  flex-direction: row;
}

section.acceso .acceso-item>figure {
  min-width: 50%;
  text-align: center;
}

section.acceso .acceso-item>figure>h3 {
  display: none;
  font: 800 28px "CIBFont Sans";
  line-height: 30px;
  letter-spacing: -0.6px;
  margin-bottom: 32px;
}

section.acceso .acceso-item>figure>img {
  max-width: 360px;
  width: 100%;
}

section.acceso .acceso-item>div>h3 {
  font: 800 28px "CIBFont Sans";
  line-height: 30px;
  letter-spacing: -0.6px;
  margin-bottom: 16px;
}

section.acceso .acceso-item>div>div {
  font: 400 16px "Open Sans";
  line-height: 22px;
  letter-spacing: -0.3px;
  margin-bottom: 24px;
}

section.acceso .acceso-item>div>a {
  display: inline-block;
  color: #2c2a29;
  background-color: transparent;
  border: 1px solid #2c2a29;
  font: 800 20px "CIBFont Sans";
  line-height: 50px;
  padding: 0 50px;
  border-radius: 50px;
  height: 50px;
  letter-spacing: -0.38px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  max-width: 100%;
}

section.acceso .acceso-item:nth-of-type(2n+1) {
  flex-direction: row-reverse;
}

section.acceso .acceso-item:not(:first-of-type) {
  padding-top: 148px;
}

@media (max-width: 768px) {
  section.acceso {
    padding: 24px 0;
  }

  section.acceso .acceso-item,
  section.acceso .acceso-item:nth-of-type(2n+1) {
    flex-direction: column;
    text-align: center;
  }

  section.acceso .acceso-item>figure,
  section.acceso .acceso-item:nth-of-type(2n+1)>figure {
    min-width: 100%;
  }

  section.acceso .acceso-item>figure>h3,
  section.acceso .acceso-item:nth-of-type(2n+1)>figure>h3 {
    display: block;
  }

  section.acceso .acceso-item>div>h3,
  section.acceso .acceso-item:nth-of-type(2n+1)>div>h3 {
    display: none;
  }

  section.acceso .acceso-item>div>div,
  section.acceso .acceso-item:nth-of-type(2n+1)>div>div {
    margin: 0 auto 32px auto;
    max-width: 600px;
    text-align: left;
  }

  section.acceso .acceso-item:not(:first-of-type) {
    padding-top: 64px;
  }
}

/* comenzar cards  */
section.comenzar-tarjetas {
  background-color: transparent;
  padding: 64px 0;
}

section.comenzar-tarjetas > div {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

section.comenzar-tarjetas > div > h2 {
  color: #2c2a29;
  text-align: center;
  min-width: 100%;
  font: 800 32px "CIBFont Sans";
  line-height: 32px;
  letter-spacing: -0.6px;
  padding-bottom: 32px;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-big {
  cursor: pointer;
  height: 255px;
  overflow: hidden;
  width: 60%;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-big > a {
  width: 100%;
  height: 177px;
  display: block;
  overflow: hidden;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-big > a > img {
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-big > div {
  background-color: #fdda24;
  padding: 20px;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-big > div > a {
  display: flex;
  flex-direction: row;
  align-items: center;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-big > div > a > span {
  color: #2c2a29;
  font-size: 40px;
  line-height: 40px;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-big > div > a > h2 {
  color: #2c2a29;
  max-height: 40px;
  height: fit-content;
  vertical-align: middle;
  font: 800 18px "CIBFont Sans";
  line-height: 20px;
  letter-spacing: -0.3px;
  margin: 0;
  padding-left: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  /* number of lines to show */
  -webkit-box-orient: vertical;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-small {
  height: 255px;
  margin-left: 24px;
  width: calc(40% - 24px);
  display: flex;
  flex-direction: row;
  overflow: hidden;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-small > div {
  padding: 16px 16px;
  position: relative;
  width: 50%;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-small > div > sub {
  font: 400 12px "Open Sans";
  line-height: 16px;
  letter-spacing: -0.17px;
  margin-bottom: 8px;
  display: block;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-small > div > h2 {
  color: #2c2a29;
  font: 800 20px "CIBFont Sans";
  line-height: 24px;
  letter-spacing: -0.38px;
  margin-bottom: 8px;
  overflow: hidden;
  text-overflow: ellipsis;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-small > div > a {
  cursor: pointer;
  background-color: #ffffff;
  line-height: 24px;
  letter-spacing: -0.17px;
  margin-bottom: 8px;
  box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.102751);
  height: 40px;
  width: 40px;
  position: absolute;
  border-radius: 50%;
  bottom: 16px;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-small > div > a > span {
  display: block;
  width: 100%;
  line-height: 40px;
  font-size: 16px;
  text-align: center;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-small > div:first-of-type {
  background-color: #59cbe8;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-small > div:nth-of-type(2) {
  background-color: #f5b6cd;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra {
  min-width: 100%;
  display: flex;
  flex-direction: row;
  padding-top: 24px;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div {
  width: 50%;
  height: 188px;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > a {
  display: none;
  width: 100%;
  height: 177px;
  overflow: hidden;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > a > img {
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div {
  position: relative;
  height: 100%;
  padding: 16px;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div > sub {
  font: 400 12px "Open Sans";
  line-height: 16px;
  letter-spacing: -0.17px;
  margin-bottom: 8px;
  display: block;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div > a:first-of-type {
  display: flex;
  flex-direction: row;
  justify-content: left;
  align-items: center;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div > a:first-of-type > h2 {
  color: #2c2a29;
  font: 800 20px "CIBFont Sans";
  line-height: 24px;
  letter-spacing: -0.38px;
  margin: 0 0 8px;
  overflow: hidden;
  text-overflow: ellipsis;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div > a:first-of-type > span {
  color: #2c2a29;
  font-size: 40px;
  line-height: 40px;
  display: none;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div > a:last-of-type {
  cursor: pointer;
  background-color: #ffffff;
  line-height: 24px;
  letter-spacing: -0.17px;
  margin-bottom: 8px;
  box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.102751);
  height: 40px;
  width: 40px;
  position: absolute;
  border-radius: 50%;
  bottom: 16px;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div > a:last-of-type > span {
  display: block;
  width: 100%;
  line-height: 40px;
  font-size: 16px;
  text-align: center;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div:first-of-type {
  background-color: #00c389;
}

section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div:nth-of-type(2) {
  background-color: #ff7f41;
}

@media (max-width: 1200px) {
  section.comenzar-tarjetas > div .comenzar-tarjetas-big {
    width: 50%;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-small {
    width: calc(50% - 24px);
  }
}

@media (max-width: 1024px) {
  section.comenzar-tarjetas > div {
    flex-direction: column;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-big {
    width: 100%;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-small {
    margin-left: 0;
    width: 100%;
    height: 188px;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-extra {
    flex-direction: column;
    padding-top: 0;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div {
    width: 100%;
    height: 250px;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > a {
    display: block;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div {
    height: auto;
    position: relative;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div > sub {
    display: none;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div > a:first-of-type > span {
    display: block;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div > a:first-of-type > h2 {
    color: #2c2a29;
    font: 800 18px "CIBFont Sans";
    line-height: 20px;
    letter-spacing: -0.3px;
    margin: 0 0 0 8px;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: left;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-extra > div > div > a:last-of-type {
    display: none;
  }
}

@media (max-width: 480px) {
  section.comenzar-tarjetas > div {
    padding: 0;
  }
  section.comenzar-tarjetas > div .comenzar-tarjetas-small {
    height: 255px;
  }
}


/* content header - container general */
.tab-content-360 {
  display: block !important;
  height: 0;
  overflow: hidden;
  margin: 0 !important;
  background-color: #f4f4f4;
}

.tab-content-360.show {
  padding-top: 144px !important;
  margin: 0 !important;
  height: auto;
  overflow: auto;
}

.tab-content-360>div:first-of-type>h2 {
  color: #2c2a29;
  font: 800 32px "CIBFont Sans";
  line-height: 32px;
  letter-spacing: -0.6px;
  text-align: center;
}

@media (max-width: 768px) {
  .tab-content-360>div:first-of-type>h2 {
    font: 800 38px "CIBFont Sans";
    line-height: 30px;
    text-align: left;
    width: fit-content;
  }
}

.tab-content-360>div:first-of-type>div:first-of-type {
  font: 400 16px "CIBFont Sans";
  line-height: 22px;
  max-width: 900px;
  margin: 0 auto;
  letter-spacing: -0.3px;
  text-align: center;
  margin-top: 20px;
}

@media (max-width: 768px) {
  .tab-content-360>div:first-of-type>div:first-of-type {
    text-align: left;
    margin-top: 16px;
  }
}



/* -- offer -- */
section.offer {
  background-color: transparent;
  padding: 28px 0;
}

section.offer .img-offer {
  text-align: center;
}

section.offer .img-offer img {
  padding: 16px 0 0 0;
  max-width: 384px;
  width: 100%;
}

section.offer .text-offer>h4 {
  font: 800 24px "CIBFont Sans";
  line-height: 26px;
  letter-spacing: -0.45px;
  margin-bottom: 16px;
}

section.offer .text-offer>p,
section.offer .text-offer>ol {
  margin-top: 16px;
  line-height: 22px;
}

section.offer .text-offer>ol {
  list-style-position: outside;
  padding-left: 32px;
}

section.offer .text-offer>ol>li::marker {
  font: 800 32px "CIBFont Serif";
  line-height: 32px;
  letter-spacing: -0.6px;
  text-align: center;
}

section.offer .text-offer>ol>li>span {
  font: 400 16px "Open Sans";
  line-height: 22px;
  letter-spacing: -0.3px;
  vertical-align: super;
}

@media (max-width: 990px) {
  section.offer .text-offer {
    display: none;
  }
}

/* -- register -- */

.register {
  padding: 64px 16px;
}

.register>h2 {
  color: #2c2a29;
  font: 800 32px "CIBFont Sans";
  line-height: 32px;
  letter-spacing: -0.6px;
  text-align: center;
  width: fit-content;
}

@media (max-width: 780px) {
  .register>h2 {
    text-align: left;
  }
}

.register>div {
  max-width: 960px;
  margin: 0 auto;
}

.register>div>.item-register {
  max-width: 50%;
  position: relative;
  padding-bottom: 56px;
}

.register>div>.item-register::after {
  content: none;
}

.register>div>.item-register::before {
  left: unset;
}

.register>div>.item-register>h3 {
  display: block;
  position: absolute;
  background-color: #ffffff;
  border: 1px solid #00c389;
  height: 40px;
  width: 40px;
  line-height: 40px;
  border-radius: 20px;
  text-align: center;
  top: 0;
}

.register>div>.item-register>span {
  font-size: 56px;
  line-height: 56px;
  margin-bottom: 16px;
}

.register>div>.item-register>h4 {
  font: 800 28px "CIBFont Sans";
  line-height: 30px;
  letter-spacing: -0.6px;
  border: none;
  margin-bottom: 16px;
}

.register>div>.item-register>p {
  font: 400 16px "Open Sans";
  line-height: 24px;
  letter-spacing: -0.3px;
}

.register>div>.item-register>a {
  display: inline-block;
  font: 600 16px "Open Sans";
  line-height: 24px;
  letter-spacing: -0.3px;
  margin-top: 16px;
  text-decoration: underline;
  color: #2c2a29;
}

.register>div>.item-register>a>span {
  text-decoration: none;
  margin-left: 8px;
}

.register>div>.item-register:nth-of-type(2n) {
  margin-left: 50%;
  padding-left: 56px;
}

.register>div>.item-register:nth-of-type(2n)::before {
  left: 0;
}

.register>div>.item-register:nth-of-type(2n)>h3 {
  left: 0;
  transform: translateX(-50%);
}

.register>div>.item-register:nth-of-type(2n+1) {
  text-align: right;
  margin-right: 50%;
  padding-right: 56px;
}

.register>div>.item-register:nth-of-type(2n+1)::before {
  right: -1px;
}

.register>div>.item-register:nth-of-type(2n+1)>h3 {
  right: 1px;
  transform: translateX(50%);
}

.register>div>.item-register:last-of-type::before {
  width: 0;
}

@media (max-width: 780px) {
  .register>div {
    padding: 0 0px 0px 20px;
  }

  .register>div>.item-register:nth-of-type(2n+1),
  .register>div>.item-register:nth-of-type(2n) {
    margin: 0 auto;
    width: 100%;
    max-width: 420px;
    padding: 0 0 56px 32px;
    text-align: left;
  }

  .register>div>.item-register:nth-of-type(2n+1)::before,
  .register>div>.item-register:nth-of-type(2n)::before {
    left: 0;
    right: unset;
  }

  .register>div>.item-register:nth-of-type(2n+1)>h3,
  .register>div>.item-register:nth-of-type(2n)>h3 {
    left: 0;
    right: unset;
    transform: translateX(-50%);
  }
}

#comercializacion .register {
  background-color: #ffffff !important;
}

/* -- tarjetas inmobiliaria -- */

section.tarjetas-inmobiliaria {
  padding: 32px 0 64px;
}

section.tarjetas-inmobiliaria>div {
  padding: 0;
}

section.tarjetas-inmobiliaria .tarjetas-inmobiliaria-item {
  display: flex;
  flex-direction: column;
  height: 300px;
  padding: 24px;
  width: 100%;
}

section.tarjetas-inmobiliaria .tarjetas-inmobiliaria-item>span {
  font-size: 88px;
  text-align: center;
}

section.tarjetas-inmobiliaria .tarjetas-inmobiliaria-item>div {
  text-align: left;
}

section.tarjetas-inmobiliaria .tarjetas-inmobiliaria-item>div>h3 {
  font: 800 28px "CIBFont Sans";
  line-height: 30px;
  letter-spacing: -0.6px;
  margin-bottom: 8px;
}

section.tarjetas-inmobiliaria .tarjetas-inmobiliaria-item>div>div {
  font: 400 16px "Open Sans";
  line-height: 22px;
  letter-spacing: -0.3px;
}

@media (max-width: 1200px) {
  section.tarjetas-inmobiliaria .tarjetas-inmobiliaria-item {
    padding: 16px;
  }
}

@media (max-width: 1023px) {
  section.tarjetas-inmobiliaria .tarjetas-inmobiliaria-item {
    padding: 16px;
    flex-direction: row;
    height: 188px;
    align-items: center;
  }

  section.tarjetas-inmobiliaria .tarjetas-inmobiliaria-item>span {
    font-size: 88px;
    text-align: center;
  }

  section.tarjetas-inmobiliaria .tarjetas-inmobiliaria-item>div {
    padding-left: 16px;
  }

  section.tarjetas-inmobiliaria .tarjetas-inmobiliaria-item>div>h3 {
    font: 800 20px "CIBFont Sans";
    line-height: 24px;
    letter-spacing: -0.38px;
    margin-bottom: 8px;
  }
}

section.tarjetas-inmobiliaria .swiper-slide:first-of-type .tarjetas-inmobiliaria-item {
  background-color: #59cbe8;
}

section.tarjetas-inmobiliaria .swiper-slide:nth-of-type(2) .tarjetas-inmobiliaria-item {
  background-color: #fdda24;
}

section.tarjetas-inmobiliaria .swiper-slide:nth-of-type(3) .tarjetas-inmobiliaria-item {
  background-color: #f5b6cd;
}

section.tarjetas-inmobiliaria .swiper-pagination-tarjetas-inmobiliaria {
  display: none;
  position: relative;
  padding-top: 48px;
  justify-content: center;
}

section.tarjetas-inmobiliaria .swiper-pagination-tarjetas-inmobiliaria>span {
  display: block;
  background-color: #2c2a29;
  border-radius: 4px;
  width: 40px;
  margin: 0 8px;
  opacity: 1;
}

section.tarjetas-inmobiliaria .swiper-pagination-tarjetas-inmobiliaria .swiper-pagination-bullet-active {
  background-color: #fdda24;
}

@media (max-width: 1023px) {
  section.tarjetas-inmobiliaria {
    padding: 32px 0;
  }

  section.tarjetas-inmobiliaria .swiper-pagination-tarjetas-inmobiliaria {
    display: flex;
  }
}

section.tarjetas-inmobiliaria .swiper-slide {
  max-width: 33.3%;
}

@media (max-width: 1024px) {
  section.tarjetas-inmobiliaria .swiper-slide {
    max-width: 50%;
  }
}

@media (max-width: 768px) {
  section.tarjetas-inmobiliaria .swiper-slide {
    max-width: 75%;
  }
}

@media (max-width: 420px) {
  section.tarjetas-inmobiliaria .swiper-slide {
    max-width: 100%;
  }
}