/* Base containers */
#tabs-front, 
#tabs-front ul.tabs-list, 
#tabs-front .tab-container {
  box-sizing: border-box;
  background-color: transparent;
  border: 0;
}

#tabs-front {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0;
  backdrop-filter: blur(14px);
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  flex: none;
  order: 1;
  flex-grow: 0;
  transform: translateY(110%);
}


#tabs-front {
  animation-delay: 1s;
  animation-name: upwards;
  animation-duration: 2.5s;
  animation-fill-mode: forwards;
      will-change: transform, opacity;
}

#tabs-front .tab-container.hidden {
  display: none;
}

#homepage  .hero .header {
  /* animation-delay: 1s;
  animation-name: leftwind;
  animation-duration: 2.5s;
  animation-fill-mode: forwards;
  transform: translateX(-50%) */
}
@keyframes upwards {
  from {
    transform: translateY(110%);
    /* opacity: 0.3; */
  }
  to {
    transform: translateY(0);
    /* opacity: 1; */
  }
}
@keyframes leftwind {
  from {
    transform: translateX(-50%);
    opacity: 0.3;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
#homepage .hero {
  padding: 0;
  position: relative;
  height: 960px;
  overflow: hidden;
}

#homepage .hero .header-outer .header {
  margin: 3rem 0;
  position: absolute;
  margin: 0;
  width: 100%;
  padding: 0;
  left: 0;
  height: 100px;
}

#homepage .hero .header-outer .header::before {
  background: url(../img/stripe-wheel-horizontal.svg) no-repeat;
  top: 0;
  width: 322px;
  /* background-size: auto 100px; */
  left: 0px;
}

#homepage  .hero .header h1,
#homepage  .hero .header .h4 {
  margin-left: 352px;
  line-height: 50px;
  margin-top: 2px;
}

.header-outer {
  height: 100px;
  margin: 2rem 0;
}

.image-front {
  width: 100%;
  z-index: 0;
  position: absolute;
}

/* Video */
.video-front,
.bg-wrapper,
.layer--over-video {
  position: absolute;
  width: 100%;
  height: 100%;
}

.video-front {
  object-fit: cover;
  display: block;
}

.bg-wrapper::after {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0, 0, 0, 0.3); 
  pointer-events: none;
}

.layer--over-video {
  display: block;
  opacity: 0.1;
  background-color: black;
}

/* Tabs layout */
#tabs-front ul.tabs-list {
  display: flex;
  margin: 0;
  flex-direction: row;
  width: 100%;
  background-color: transparent;
}

#tabs-front ul.tabs-list li {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  height: 62px;
  flex: 1;
  border: 0;
  background: rgba(0, 20, 36, 0.9);
  border-top: 4px solid transparent;
}
#tabs-front ul.tabs-list li.ui-state-active,
#tabs-front ul.tabs-list li:hover {
  border-top: 4px solid #00B8FF;
  background: rgba(0, 20, 36, 0.65);
}

#tabs-front ul.tabs-list li.gateway-tab {
  border-radius: 16px 0 0 0;
}

#tabs-front ul.tabs-list li.knowledge-tab {
  border-radius: 0 16px 0 0;
}

#tabs-front ul.tabs-list li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-align: center;
  color: #fff;
  opacity: 0.7;
  font-family: 'Noto Sans SemiBold';
  font-weight: 600;
  font-size: 16px;
}

#tabs-front ul.tabs-list li a.ui-state-active {
  opacity: 1;
}

/* Tab container shared */
#tabs-front .tab-container {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 45px 48px;
  border-radius: 0 0 16px 16px;
  background: rgba(0, 20, 36, 0.65);
  /* backdrop-filter: blur(14px); */
}

/* Shared .element styles */
#tabs-front .tab-container .element {
  background: rgba(1, 21, 39, 0.45);
  /* backdrop-filter: blur(6.5px); */
  border-radius: 24px;
  margin-bottom: 16px;
  align-items: center;
  justify-content: center;
  display: flex;
  transition: background 0.2s ease;
}

#tabs-front .tab-container .element:hover {
  background: rgba(1, 21, 39, 0.7);
  cursor: pointer;
}

#tabs-front .tab-container .element a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 10px;
}

/* Gateway Specific */
#tabs-front #gateway.tab-container .data-elements .element {
  height: 300px;
  padding: 1.2em 1em;
  flex-direction: column;
  position: relative;
  gap: 16px;
}

#tabs-front #gateway.tab-container .data-elements .element span[class^="icon"],
#tabs-front #funds.tab-container .element a .icon {
  width: 65px;
  height: 65px;
  display: flex;
  background-repeat: no-repeat;
  background-position: center;
}

#tabs-front #gateway.tab-container .element .icon-0 {
  background-image: url("../img/active-funds.png");
}
#tabs-front #gateway.tab-container .element .icon-1 {
  background-image: url("../img/contributors.png");
}
#tabs-front #gateway.tab-container .element .icon-2 {
  background-image: url("../img/po.png");
}
#tabs-front #gateway.tab-container .element .icon-3 {
  background-image: url("../img/countries.png");
}

/* Numbers */
.element .number,
.counter .number {
  font-style: normal;
  text-align: center;
  color: #5AD1FF;
}

.element .number {
  font-family: 'Manrope';
  font-weight: 400;
  font-size: 80px;
  line-height: 100px;
}

.counter .number {
  font-family: 'Manrope-Medium';
  font-weight: 500;
  font-size: 48px;
  line-height: 48px;
}

/* Labels */
.element .label,
.counter .label {
  font-family: 'Noto Sans';
  font-weight: 500;
  font-size: 20px;
  text-align: center;
  color: #fff;
  background: transparent;
}

.element .label {
  line-height: 120%;
  padding: 0 15px;
  width: 100%;
  word-break: break-word;
  white-space: normal;
  display: block;
  cursor: pointer;
  height: 50px;
}

#tabs-front #gateway.tab-container .data-counters {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin: 1rem 0;
  padding-top: 2rem;
}

#tabs-front #gateway.tab-container .data-counters .counter {
  height: 100px;
  padding: 1em;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

/* FUNDS Section */
#tabs-front #funds.tab-container .element {
  height: 138px;
  padding: 10px;
  margin-bottom: 16px;
}

#tabs-front #funds.tab-container .element a .icon {
  width: 60px;
  height: 60px;
}

#tabs-front #funds.tab-container .element a .newfund { background-image: url("../img/newfund.png"); }
#tabs-front #funds.tab-container .element a .flagship { background-image: url("../img/flagship.png"); }
#tabs-front #funds.tab-container .element a .pipeline { background-image: url("../img/pipeline.png"); }
#tabs-front #funds.tab-container .element a .peace { background-image: url("../img/peace.png"); }
#tabs-front #funds.tab-container .element a .climate { background-image: url("../img/climate.png"); }
#tabs-front #funds.tab-container .element a .development { background-image: url("../img/development.png"); }

#tabs-front #funds.tab-container .element a .label {
  color: #FFFFFF;
  font-size: 20px;
  line-height: 150%;
  background: none;
  cursor: pointer;
  line-height: 20px;
  height: auto;
}

/* KNOWLEDGE PRODUCTS */
#featured-documents .views-element-container {
  width: 100%;
}

#featured-documents .view-featured-documents .view-content {
  display: flex;
  max-width: 75%;
  align-items: center;
  justify-content: center;
  gap: 55px;
  margin: auto;
  margin-bottom: 30px;
}

#featured-documents .view-featured-documents .view-content .view-row,
.view-featured-documents .views-row {
  flex: 1;
  gap: 25px;
  max-width: 170px;
  max-height: 220px;
  overflow: hidden;
}

.view-featured-documents .card.portrait .card-image,
.view-featured-documents .doc .card {
  background-color: transparent;
  height: 235px;
  max-width: 170px;
  border: none;
}

.view-featured-documents .card.portrait .card-image img {
  position: relative;
  width: 170px;
  transform: none;
  left: auto;
}

.view-featured-documents .doc .card-section {
  display: none;
}

#tabs-front #knowledge.tab-container .element {
  height: 138px;
  padding: 10px;
  margin-bottom: 16px;
}

#tabs-front #knowledge.tab-container .element a .icon {
  width: 60px;
  height: 60px;
}

#tabs-front #knowledge.tab-container .introduction {
  color: #FFFFFF;
}

#tabs-front #knowledge.tab-container .element a .reports { background-image: url("../img/reports.png"); }
#tabs-front #knowledge.tab-container .element a .financing { background-image: url("../img/financing.png"); }
#tabs-front #knowledge.tab-container .element a .pooled { background-image: url("../img/pooled.png"); }
#tabs-front #knowledge.tab-container .element a .resources { background-image: url("../img/resources.png"); }
#tabs-front #knowledge.tab-container .element a .dcument { background-image: url("../img/dcument.png"); }
#tabs-front #knowledge.tab-container .element a .learning { background-image: url("../img/learning.png"); }

#tabs-front #knowledge.tab-container .element a .label {
  color: #FFFFFF;
  font-size: 20px;
  line-height: 150%;
  background: none;
  cursor: pointer;
  line-height: 20px;
  height: auto;
}
