.partners-header {
  margin-top: var(--header-height);
  position: relative;
  padding: var(--gen-spacing);
}

.partner-page.section-info {
  margin-top: var(--gen-spacing)
}

.partners-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: auto;
  grid-column-gap: var(--gen-spacing);
  grid-row-gap: var(--gen-spacing);
  grid-auto-flow: dense;
  border-top: 1px solid var(--main-color);
  border-bottom: 1px solid var(--main-color);
  padding: var(--gen-spacing) 0;
}

.partner-block {
  width: 100%;
  height: 1px;
  padding-bottom: 100%;
  position: relative;
}

.partner-block.active-partner{
  grid-column-end: span 3;
  padding-bottom: unset;
  height: fit-content;
  display: flex;
}

.partner-block .info-block {
  display: none;
  flex-direction: column; 
  justify-content: space-between;
  height: 100%;
}

.partner-block .info-block h3 {
  margin-bottom: 1em;
}

.partner-block .info-block .partner-link h3 {
  margin-bottom: 0;
  color: var(--main-color);
}

.partner-block .info-block .partner-link:hover h3 {
  color: #595959;
}

.partner-block.active-partner .logo-block {
  height: 25vw;
  width: 25vw;
  position: relative;
}

.partner-block.active-partner .info-block {
  display: flex;
  width: calc(55.555555% - (var(--gen-spacing) / 2));
  margin-left: var(--gen-spacing);
  position: relative;
  right: 0;
  height: fit-content;
}

.partner-block .logo-block {
  height: 100%;
  position: absolute;
  display: flex;
  justify-content: center;
  width: 100%;
  align-items: center;
  background-color: #E5E5E5;
}

.partner-logo {
  object-fit: contain;
  width: 75%;
}

@media (min-width: 650px) and (max-width: 900px) { 
  .partner-block.active-partner .logo-block {
    height: 33vw;
    width: 33vw;
    position: relative;
  }
}

@media only screen and (max-width: 650px) { 
  .partners-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: auto;
    grid-column-gap: var(--gen-spacing);
    grid-row-gap: var(--gen-spacing);
    grid-auto-flow: dense;
  }

  .partner-block.active-partner .logo-block { 
    width: calc(50% - (var(--gen-spacing) / 2));
    height: calc(50vw - ((var(--gen-spacing) * 1.5) ));
  }

  .partner-block.active-partner .info-block {
    width: calc(50% - (var(--gen-spacing) / 2));
    margin-left: auto;
    position: relative;
  }

  .partner-block.active-partner {
    grid-column-end: span 2;
    min-height: calc(50vw - ((var(--gen-spacing) * 1.5) ));
    padding-bottom: 0;
  }

  .partner-link.h3 {
    font-size: 1.8rem;
    word-break: break-all;
    margin-top: 1rem;
  }

  .info-block {
    min-height: calc(50vw - ((var(--gen-spacing) * 1.5) ));
  }
  
  .partner-block.active-partner, .info-block, .info-container {
    height: fit-content;
  }
}
