#templateGrid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  grid-template-rows: auto auto auto auto auto;
  gap: 20px;
  width: 90%;
  margin: 40px auto;
  font-family: "SF Pro Display", sans-serif;
}

/* Struktur grid */
.header {
  grid-column: 1 / 3;
  background: #2f2f4f;
  color: #1976D2;
  text-align: center;
  padding: 20px;
  border-radius: 12px;
  font-weight: 800;
}

.left-big {
  grid-column: 1 / 2;
  grid-row: 2 / 4;
  height: 100%; /* biar proporsional */
}

.right-top {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
}

.right-bottom {
  grid-column: 2 / 3;
  grid-row: 3 / 4;
}

.middle-wide {
  grid-column: 1 / 3;
  grid-row: 4 / 5;
  height: 100%; /* samakan tinggi dengan Traga */
}

.footer {
  grid-column: 1 / 3;
  background: #2f2f4f;
  color: #333;
  text-align: center;
  padding: 15px;
  border-radius: 12px;
}

/* Card style */
.grid-item {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
  overflow: hidden;
  transition: transform .3s ease;
}

.grid-item:hover { transform: translateY(-6px); }

.grid-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.info { padding: 15px; }

.info h2, .info h3 { margin: 0 0 8px; color: #1976d2; }
.info p { font-size: 14px; color: #555; }

/* Responsif mobile */
@media (max-width: 768px) {
  #templateGrid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto auto auto auto;
  }
  .left-big { grid-column:  1 / 3; grid-row: 2 / 3; }
  .header, .middle-wide, .footer { grid-column: 1 / 3; }
  .right-top, .right-bottom { grid-column: auto; grid-row: auto; }
  .grid-item img { height: 160px; }
}
.btn-contact {
  display: inline-block;
  margin-top: 10px;
  padding: 8px 16px;
  background: #1976d2;
  color: #fff;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600;
  transition: background .3s ease;
  font-size: 12px;
}

.btn-contact:hover {
  background: #0d47a1;
}