body {
  margin: 0;
  font-family: "Inter", sans-serif;
  background: #ffffff;
}



.header-card {
  background: #ffffff !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  flex-direction: column !important;
  padding: 10px;
  position: relative;
  color: #000000;
}

.header-card:visited {
  color: #000000;
}

.header-card:hover {
  background: rgb(30, 30, 30) !important;
  color: #ffffff;
  cursor: pointer;
  transition: 0.5s;
}

.header-card:hover .cartel {
  color: #ffffff;
  transition: 0.5s;
}

.in-card:hover {
  background: rgb(30, 30, 30) !important;
  cursor: pointer;
  color: #ffffff;
}



.card:hover .discover::before {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='10' viewBox='0 0 26 10'%3E%3Cline x1='0' y1='5' x2='22' y2='5' stroke='white' stroke-width='1'/%3E%3Cpolyline points='17%2C1%2022%2C5%2017%2C9' fill='none' stroke='white' stroke-width='1'/%3E%3C/svg%3E");
}

.header-logo {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 80px;
  height: auto;
  display: block;
  object-fit: contain;
}

.header-card h1 {
  margin: 0 0 8px 0;
  font-size: 28px;
  font-weight: 600;
}

.header-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 300;
}

.cartel {
  position: absolute;
  bottom: 0px;
  right: 0px;
  font-size: 13px;
  font-weight: 300;
  color: #000000;
  display: flex;
  align-items: center;
  gap: 6px;
  display: inline-block;
  vertical-align: middle;
}



.discover {
  position: absolute;
  bottom: 10px;
  right: 10px;
  font-size: 12px;
  font-weight: 300;
  color: #000000;
  display: flex;
  align-items: center;
  gap: 6px;
}



.discover::before {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='10' viewBox='0 0 26 10'%3E%3Cline x1='0' y1='5' x2='22' y2='5' stroke='black' stroke-width='1'/%3E%3Cpolyline points='17%2C1%2022%2C5%2017%2C9' fill='none' stroke='black' stroke-width='1'/%3E%3C/svg%3E");
  display: inline-block;
  vertical-align: middle;
}

.grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  padding: 10px;
}

.card {
  background: rgb(240, 240, 240);
  aspect-ratio: 6 / 7;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  box-sizing: border-box;
  border: none;
  outline: none;
  cursor: pointer;
}

.card img {
  height: 60%;
  width: auto;
  max-width: 100%;
  display: block;
}

.header-card img.header-logo {
  height: auto !important;
  width: 75% !important;
  max-width: none;  transition: filter 0.5s;
}

.header-card:hover img.header-logo {
  filter: brightness(0) invert(1);}


.cardproject {
  background: rgb(240, 240, 240);
  aspect-ratio: 6 / 7;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  box-sizing: border-box;
  border: none;
  outline: none;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}


.cardproject img {
  height: 60%;
  width: auto;
  max-width: 100%;
  display: block;
}


.cardproject:hover {
  background: rgb(220, 220, 220);
  transition: 0.5s;
}

.cardproject:hover img {
  filter: blur(3px);
  transition: 0.5s;
}

.hover-label {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  padding: 10px;
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: none;
}

.hover-label .hover-title {
  font-size: 18px;
  font-weight: 600;
  color: #000000;
  margin: 0 0 4px 0;
}

.hover-label .hover-desc {
  font-size: 12px;
  font-weight: 300;
  color: #000000;
  margin: 0;
  line-height: 1.4;
}

.hover-label .hover-more {
  position: absolute;
  bottom: 10px;
  right: 10px;
  font-size: 12px;
  font-weight: 300;
  color: #000000;
  display: flex;
  align-items: center;
  gap: 6px;
}

.hover-label .hover-more::before {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='10' viewBox='0 0 26 10'%3E%3Cline x1='0' y1='5' x2='22' y2='5' stroke='black' stroke-width='1'/%3E%3Cpolyline points='17%2C1%2022%2C5%2017%2C9' fill='none' stroke='black' stroke-width='1'/%3E%3C/svg%3E");
  display: inline-block;
  vertical-align: middle;
}

.cardproject:hover .hover-label {
  opacity: 1;
}

.in-card {
  background: #ffffff !important;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  padding: 10px;
  position: relative;
  color: black;
}

.in-card:visited {
  color: black;
}

.in-card:hover {
  background: rgb(30, 30, 30) !important;
  cursor: pointer;
  color: #ffffff;
  transition: 0.5s;
}

.in-card:hover .cartel {
  color: #ffffff;
  transition: 0.5s;
}

.card:hover .discover { 
  color: #ffffff;
  transition: 0.5s;
}

.in-card h1 {
  margin: 0 0 8px 0;
  font-size: 28px;
  font-weight: 600;
}

.in-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 300;
}


.card:hover {
  background: rgb(220, 220, 220);
  transition: 0.5s;
}

.text {
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
}

.text h2 {
  margin: 0;
  font-size: 20px;
}

.text p {
  margin: 5px 0 0;
  font-size: 14px;
}

@media (max-width: 1024px) {
  .grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 850px) {
  .grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .grid {
    grid-template-columns: 1fr;
  }
}

@media (hover: none) and (pointer: coarse) {
  .cardproject:hover {
    background: rgb(240, 240, 240);
  }
  .cardproject:hover img {
    filter: none;
  }
  .hover-label {
    opacity: 1;
  }
  .hover-label .hover-desc {
    display: none;
  }
  .hover-label .hover-more {
    display: none;
  }
}



/* Logos */
.logos-section {
  clear: both;
  padding: 40px 30px 20px 30px;
  border-top: 1px solid rgb(220, 220, 220);
}

.logos-label {
  font-size: 12px;
  font-weight: 300;
  color: #999;
  margin: 0 0 0px 0;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.logos-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.logo-slot {
  width: 140px;
  height: 70px;
  background: rgb(240, 240, 240);
  padding: 12px 16px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}

.logo-slot img {
  width: 50px;
  height: auto;
  object-fit: contain;
  display: block;
}

.andraulttag {
  width: 50px;
  margin: auto;
  display: block;
}


@media (max-width: 600px) {
  .logos-section {
    padding: 30px 16px 16px 16px;
  }

  .logos-grid {
    gap: 10px;
  }

  .logo-slot {
    width: calc(50% - 5px);
    height: 56px;
  }
}

.start-now-btn {
  display: inline-block;
  padding: 16px 48px;
  color: #ffffff;
  background-color: #303030;
  border-radius: 25px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  transition: background 0.3s, color 0.3s;
  margin-bottom: 30px;
}

.start-now-btn:hover {
  background: #ffffff;
  color: #303030;
}