.banner {
  position: relative;
  min-height: 50vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: black; }
  .banner__img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: conver;
    opacity: .4; }
  .banner__container {
    position: relative;
    width: 100%;
    text-align: center;
    color: white; }
    .banner__container_title {
      font-size: 2.5rem; }
    .banner__container_subtitle {
      font-size: 1.5rem; }

/*planes*/
.planes__container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1rem; }
  .planes__container_title {
    font-size: 1.3rem;
    text-align: center; }
  .planes__container_box {
    display: flex;
    flex-direction: column; }
    @media screen and (min-width: 768px) {
      .planes__container_box {
        flex-direction: row; } }
    .planes__container_box-card {
      min-width: 48%;
      margin: 1rem;
      padding: 1rem;
      text-align: center;
      border: 1px solid #eb6347;
      border-radius: 7px; }
      .planes__container_box-card--title {
        color: #eb6347;
        font-weight: bold;
        margin-bottom: 1rem;
        text-align: center;
        font-size: 1.2rem; }
        @media screen and (min-width: 768px) {
          .planes__container_box-card--title {
            font-size: 1.5rem; } }
      .planes__container_box-card--content {
        font-size: 1.1rem; }
        @media screen and (min-width: 768px) {
          .planes__container_box-card--content {
            font-size: 1.2rem; } }

/*tarjetas*/
.tarjetas__container {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  justify-content: center;
  width: 100%;
  grid-gap: 1rem; }
  @media screen and (min-width: 768px) {
    .tarjetas__container {
      grid-template-columns: repeat(2, 1fr); } }
  @media screen and (min-width: 1024px) {
    .tarjetas__container {
      grid-template-columns: repeat(3, 1fr); } }
  .tarjetas__container_container {
    height: 100%; }
  .tarjetas__container_box {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: center;
    background-color: #e6e6e6;
    line-height: 4;
    margin-bottom: 1rem; }
    .tarjetas__container_box--title {
      position: relative;
      display: flex;
      justify-content: center;
      align-items: center;
      background-color: black;
      height: 15vh;
      z-index: 10;
      color: white;
      font-size: 2rem;
      text-shadow: 0 0 7px black; }
      .tarjetas__container_box--title-img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: .5;
        z-index: -1; }
    .tarjetas__container_box--content {
      border-bottom: 1px solid rgba(0, 0, 0, 0.2);
      margin: 0 1rem;
      font-size: 1.2rem; }
      .tarjetas__container_box--content-link {
        background-color: #eb6347;
        padding: 1rem;
        color: white;
        text-decoration: none;
        font-size: 1.3rem;
        border-radius: 7px; }
    .tarjetas__container_box--content:nth-child(2)::before {
      content: ' $'; }
    .tarjetas__container_box--content:last-child {
      border-bottom: none; }
  .tarjetas__container .lh {
    line-height: 1.5;
    padding: 1rem 0; }

.flex {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center; }

.check[type='checkbox'] {
  position: relative;
  -webkit-appearance: none;
  height: 20px;
  width: 20px;
  outline: none;
  background-color: #333;
  border-radius: 7px;
  margin-left: .5rem;
  margin-top: 1rem; }

.check[type='checkbox']:checked {
  position: relative;
  -webkit-appearance: none;
  height: 20px;
  width: 20px;
  outline: none;
  background-color: #33e683; }

/*demos*/
.demos {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-gap: 1rem; }

.demos a {
  min-height: 100%;
  width: 100%; }

.demos a img {
  object-fit: cover;
  width: 100%;
  min-height: 100%; }

@media screen and (min-width: 1024px) {
  .demos {
    grid-template-columns: repeat(2, 1fr); } }
