.intro {
  padding: 3rem 0;

  .line {
    width: 100%;
    height: 1px;
    background-color: oklch(from var(--color-greyish-brown) l c h / 0.3);
  }

  .image-container {
    position: relative;

    .image {
      --bs-aspect-ratio: 133%;
    }

    .image-text {
      position: absolute;
      left: 0;
      bottom: 0;
      padding: 2rem;
      padding-top: 4rem;
      background: linear-gradient(0deg, oklch(from var(--color-black) l c h / 0.8) 0%, transparent 100%);
    }
  }
}

.accordions {
  details {
    padding: 1.25rem 0;
    border-bottom: 1px solid oklch(from var(--color-greyish-brown) l c h / 0.2);

    summary {
      display: flex;
      align-items: center;

      .acc-title {
        font-size: var(--text-sm);
        font-weight: 500;
        line-height: 1.375;
      }

      .acc-subtitle {
        font-size: var(--text-xs);
        color: var(--color-greyish-brown);
      }

      &::marker {
        display: none;
      }

      &::after {
        content: "";
        display: inline-block;
        width: 1rem;
        height: 1rem;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-chevron-down'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        transition: transform 0.15s;
      }
    }

    &[open] {
      summary {
        &::after {
          transform: rotate(180deg);
        }
      }
    }
  }

  .acc-content {
    font-size: var(--text-sm);
    color: var(--color-greyish-brown);
    margin-top: 1rem;
  }
}

.published-research {
  padding: 3rem 0 4rem;

  .tabs-btns {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
    margin-top: 2rem;
    margin-bottom: 3rem;

    .tab-btn {
      font-size: var(--text-2xs);
      font-weight: 600;
      border: none;
      color: var(--color-mine-shaft);
      background-color: var(--color-secondary);
      padding: 10px 20px;
      text-transform: uppercase;
      letter-spacing: 0.15em;
      transition: all 0.15s;

      &.active,
      &:hover {
        color: var(--color-white);
        background-color: var(--color-primary);
      }

      &:focus-visible {
        outline: none;
        box-shadow: 0 0 0 2px var(--color-primary);
      }
    }
  }

  .tabs-content {
    background-color: var(--color-secondary);

    .col-image {
      position: relative;

      img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
      }

      .image-label {
        display: inline-flex;
        flex-direction: column;
        align-items: start;
        gap: 0.25rem;
        position: absolute;
        left: 0;
        bottom: 0;
        padding: 1rem 1.5rem;
        background-color: var(--color-primary);
      }
    }

    .col-texts {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: start;
      padding: 2rem;
      background-color: var(--color-secondary);
      
      .texts {
        color: var(--color-greyish-brown);
        line-height: 1.625;
      }

      .line {
        width: 4rem;
        height: 1px;
        background-color: var(--color-primary);
        margin-top: 1rem;
      }
    }

    .publications-links {
      .publication-link {
        display: flex;
        flex-direction: column;
        border-left: 2px solid oklch(from var(--color-primary) l c h / 0.2);
        padding-left: 1rem;
        margin-bottom: 1rem;
        transition: all .15s;

        .publication-text {
          font-size: var(--text-sm);
          font-weight: 500;
          color: var(--color-mine-shaft);
          transition: all .15s;
        }

        .publication-detail {
          font-size: var(--text-xs);
          font-style: italic;
          color: var(--color-greyish-brown);
          transition: all .15s;
        }

        &:hover {
          border-left-color: var(--color-primary);
          .publication-text {
            color: var(--color-primary);
          }
        }
      }
    }
  }

  @media (width >= 992px) {
    .tabs-content {
      .col-texts {
        padding: 3rem;
      }
    }
  }

  @media (width >= 1400px) {
    .intro-content {
      padding: 3rem 0 6rem;
    }
    .tabs-content {
      .col-texts {
        padding: 4rem;
      }
    }
  }
}

.current-research {
  padding: 2rem 0 4rem;

  @media (width >= 1400px) {
    padding: 3rem 0 6rem;
  }

  .current-research-card {
    display: flex;
    flex-direction: column;
    position: relative;
    height: 100%;
    background-color: var(--color-secondary);
    transition: all 0.15s;

    .card-image {
      aspect-ratio: 4/3;
      overflow: hidden;
      flex-shrink: 0;

      img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }
    }

    .card-label {
      position: absolute;
      top: 1rem;
      left: 1rem;
      font-size: var(--text-2xs);
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: .15em;
      padding: 4px 12px;
      color: var(--color-white);
      background-color: var(--color-primary);
    }

    .card-content {
      display: flex;
      flex-direction: column;
      align-items: start;
      gap: 0.75rem;
      padding: 2rem;
      height: 100%;
    }

    .card-link {
      position: absolute;
      inset: 0;
    }

    &:hover {
      outline: none;
      box-shadow: 0 0 0 .25rem var(--color-secondary);

      .card-title {
        color: var(--color-primary);
      }
    }
  }
}

.more-papers-list {
  .publications-links {
    .publication-link {
      display: flex;
      flex-direction: column;
      border-left: 2px solid oklch(from var(--color-primary) l c h / 0.2);
      padding-left: 1rem;
      margin-bottom: 1rem;
      transition: all .15s;

      .publication-text {
        font-size: var(--text-sm);
        font-weight: 500;
        color: var(--color-mine-shaft);
        transition: all .15s;
      }

      .publication-detail {
        font-size: var(--text-xs);
        font-style: italic;
        color: var(--color-greyish-brown);
        transition: all .15s;
      }

      &:hover {
        border-left-color: var(--color-primary);
        .publication-text {
          color: var(--color-primary);
        }
      }
    }
  }
}