.p-direccion {
  background-color: var(--color-sand-100);
  padding-bottom: 5rem;

  .p-direccion__content {
    width: 100%;
  }
}

.content-direccion {
  h2 {
    font-size: 18px;
    text-transform: uppercase;
    color: var(--color-navy-950);
    margin-top: 4rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--color-gold-700);
    padding-bottom: 0.5rem;
    font-family: var(--font-heading-1);
    -webkit-text-stroke: 1px #000000;
    letter-spacing: 2px;
    display: block;
    width: fit-content;

    &.has-text-align-right {
      margin-left: auto;
      border-bottom-color: var(--color-gold-500);
    }

    @media (min-width: 1280px) {
      font-size: 20px;
    }
  }

  h3 {
    font-size: 17px;
    color: var(--color-navy-800);
    margin-top: 1rem;
    margin-bottom: 1.5rem;

    @media (max-width: 767px) {
      font-size: 20px;
    }

    @media (min-width: 1200px) {
      font-size: 24px;
    }
  }

  p {
    font-size: 1.125rem;
    line-height: 1.75;
    color: var(--color-navy-950);
    margin-bottom: 1.5rem;

    &:empty {
      display: none;
    }
  }

  .has-text-align-left { text-align: left; }
  .has-text-align-center { text-align: center; }
  .has-text-align-right { text-align: right; }

  ul {
    list-style-type: disc;
    padding-left: 1.5rem;
    margin-bottom: 1.5rem;
  }

  ol {
    list-style-type: decimal;
    padding-left: 1.5rem;
    margin-bottom: 1.5rem;
  }

  .wp-block-columns {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-bottom: 3rem;

    @media (min-width: 768px) {
      flex-direction: row;
      gap: 3rem;
    }
  }

  .wp-block-column {
    flex-grow: 1;
    flex-shrink: 1;
    min-width: 0;

    @media (max-width: 767px) {
      flex-basis: auto !important;
    }

    &.is-vertically-aligned-top { align-self: flex-start; }
    &.is-vertically-aligned-center { align-self: center; }
    &.is-vertically-aligned-bottom { align-self: flex-end; }
  }

  .wp-block-image {
    margin: 0;
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    border-radius: 8px;

    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center top;
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    }
  }
}

.wp-block-paragraph {
  margin-bottom: 1rem;
}
