* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  height: 100%;
  overflow: hidden;
}

body {
  height: 100%;
  overflow: hidden;
}

@font-face {
  font-family: "Onest";
  src: url("../fonts/Onest-VariableFont_wght.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

body {
  font-family: "Onest", roboto, sans-serif;
}

.grid-container {
  display: grid;
  grid-template-columns: repeat(16, 1fr);
  grid-template-rows: repeat(16, 1fr);
  width: 100%;
  height: 100vh;
}

.img-container {
  grid-column: 1 / -1;
  grid-row: 1 / -1;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
}

.img-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: none;
}

.legal-logos {
  grid-column: 1 / -1;
  grid-row: 1 / -1;

  z-index: 2;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
}

.legal-logos .logo-superintendencia {
  object-fit: contain;
  padding: 1rem;
}

.legal-logos .logo-aval-white {
  object-fit: contain;
  padding: 1rem 3rem;
}

.text-container {
  grid-column: 2 / 8;
  grid-row: 3 / -3;

  display: flex;
  flex-direction: column;
  align-items: flex-start;

  color: white;
  z-index: 10;
}

.text-container .headline {
  font-size: 2rem;
  font-weight: 300;
}

.headline-underline {
  display: flex;
  gap: 0.25rem;

  padding-block: 1rem;
}

.text-container .headline-underline span:nth-child(1) {
  width: 2rem;
  height: 0.4rem;
  border-style: solid;
  border-radius: 0.5rem;
  background-color: white;
}

.text-container .headline-underline span:nth-child(2) {
  width: 1rem;
  height: 0.4rem;
  border-style: solid;
  border-radius: 0.5rem;
  background-color: white;
}

.text-container .content {
  font-size: 1.25rem;
  padding-block-end: 2rem;
}

.tab-container {
  width: 100%;
}

.tab-container .tab-buttons {
  display: flex;
  align-items: center;

  gap: 4rem;

  padding-bottom: 1.5rem;
  padding-inline-start: 2rem;
}

.tab-buttons .tab-button {
  color: rgba(211, 211, 211, 0.603);
  cursor: pointer;
  font-size: 1.25rem;
  transition: all 0.3s;
  padding-bottom: 0.5rem;
}

.tab-button.active {
  color: white;
  text-decoration: underline;
  text-underline-offset: 0.5rem;
}

.tab-content {
  display: none;
  flex-direction: column;
}

.tab-content.active {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.tab-content .buttons-banca {
  display: flex;
  gap: 2rem;

  padding-inline-start: 1.25rem;
  padding-block-end: 1rem;
}

.buttons-banca .button {
  background-color: #5179f4;
  padding: 0.25rem 0.75rem;
  border-radius: 1rem;

  text-decoration: none;
  color: white;
}

.tab-content .buttons-pagos {
  display: flex;
  gap: 0.5rem;
  padding-inline-start: 1.25rem;
}

.buttons-pagos .button {
  font-size: 0.75rem;

  background-color: white;
  padding: 0.25rem 1.25rem;
  border-radius: 1rem;

  text-decoration: none;
  color: black;
}

.buttons-pagos .button:nth-child(1) {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  gap: 1rem;

  padding-bottom: 1rem;
}

.buttons-pagos .button:nth-child(2) {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  gap: 1rem;
}

/* Movil */
@media (max-width: 600px) {
  .grid-container {
    height: 100vh;
  }

  .legal-logos .logo-aval-white {
    padding: 0;
  }

  .img-container img.img-movil {
    display: block;
  }

  .text-container {
    grid-column: 2 / -2;
    grid-row: 2 / -3;
  }

  .text-container .headline {
    font-size: 1.5rem;
  }

  .text-container .content {
    font-size: 1rem;
  }

  .text-container .content {
    padding-block-end: 1rem;
  }

  .tab-container .tab-buttons {
    padding-bottom: 1rem;
  }

  .tab-buttons .tab-button {
    font-size: 1rem;
  }

  .tab-content .buttons-banca {
    gap: 0.5rem;
    padding-block-end: 1rem;
    padding-inline-start: 0;

    font-size: 1rem;
  }

  .buttons-banca .button {
    font-size: 0.75rem;
  }

  .buttons-pagos .button {
    padding: 0.25rem 0.5rem;
  }

  .tab-content .buttons-pagos {
    padding-inline-start: 0;
  }

  .buttons-pagos .button:nth-child(1) {
    padding: 0.25rem 0.5rem;
    flex: 1;
  }

  .buttons-pagos .button:nth-child(2) {
    padding: 0.25rem 0.5rem;
    flex: 1;
  }
}

/* Tablet */
@media (min-width: 427px) and (max-width: 799px) {
  .grid-container {
    height: 100vh;
  }

  .img-container img.img-tablet {
    display: block;
  }

  .text-container {
    grid-column: 2 / -3;
    grid-row: 2 / -3;
  }

  .text-container .headline {
    font-size: 1.75rem;
  }

  .text-container .content {
    font-size: 1.25rem;
  }

  .tab-container .tab-buttons {
    padding-bottom: 2rem;
  }

  .tab-content.active {
    gap: 0.5rem;
  }

  .tab-content .buttons-banca {
    padding-block-end: 1rem;
  }

  .tab-content .buttons-pagos {
    padding-inline-start: 0;
  }

  .buttons-pagos .button:nth-child(1) {
    flex: 1;
  }

  .buttons-pagos .button:nth-child(2) {
    flex: 1;
  }
}

/* Medium screens */
@media (max-width: 600px) {
  .tab-content .buttons-banca {
    padding-inline-start: 0;
  }

  .tab-content .buttons-pagos {
    padding-inline-start: 0;
  }

  .buttons-pagos .button:nth-child(1) {
    flex: 1;
  }

  .buttons-pagos .button:nth-child(2) {
    flex: 1;
  }
}

/* Web */
@media (min-width: 800px) and (max-width: 1439px) {
  .grid-container {
    height: 100vh;
  }

  .img-container img.img-web {
    display: block;
  }
}

@media (min-width: 1440px) {
  .img-container img.img-web {
    display: block;
  }

  .buttons-banca .button {
    font-size: 1.25rem;
  }
}
