body{
  margin:0;
  font-family:Segoe UI;

  background:
  url("https://images.unsplash.com/photo-1501004318641-b39e6451bec6")
  no-repeat center center fixed;

  background-size:cover;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.55);
  z-index:-1;
}

header{
  text-align:center;
  padding:50px;
  color:white;
}

header h1{
  font-size:50px;
}

nav{
  margin-top:20px;
}

nav a{
  background:white;
  padding:12px 18px;
  margin:5px;
  border-radius:30px;
  text-decoration:none;
  color:#0b4d2b;
  font-weight:bold;
}

section{
  padding:60px 20px;
  text-align:center;
  color:white;
}

.grid{
  display:grid;
  grid-template-columns:
  repeat(auto-fit,minmax(220px,1fr));

  gap:20px;
}

.card{
  position:relative;
  background:rgba(255,255,255,0.93);
  color:#0b4d2b;
  padding:20px;
  border-radius:20px;
  overflow:hidden;
  transition:0.3s;
}

.card:hover{
  transform:translateY(-5px);
}

.card span{
  font-size:20px;
  font-weight:bold;
}

.up{
  color:green;
}

.down{
  color:red;
}

.stable{
  color:orange;
}

.criteria{
  position:absolute;
  bottom:-100%;
  left:0;
  width:100%;
  background:rgba(0,70,30,0.95);
  color:white;
  padding:15px;
  transition:0.4s;
}

.card:hover .criteria{
  bottom:0;
}

.box{
  width:320px;
  margin:auto;
  background:rgba(255,255,255,0.92);
  padding:25px;
  border-radius:20px;
  color:black;
}

.box select,
.box input{
  width:100%;
  padding:12px;
  margin:10px 0;
  border-radius:10px;
  border:none;
}

button{
  width:100%;
  padding:12px;
  background:#0b4d2b;
  color:white;
  border:none;
  border-radius:10px;
  cursor:pointer;
}

button:hover{
  background:#119c56;
}

#map{
  height:450px;
  border-radius:20px;
  margin-top:20px;
}

/* POSTER */

.posterGrid{
  display:grid;
  grid-template-columns:
  repeat(auto-fit,minmax(300px,1fr));

  gap:25px;
  margin-top:40px;
}

.poster{
  background:rgba(255,255,255,0.95);
  border-radius:20px;
  overflow:hidden;
  color:#0b4d2b;
  transition:0.4s;
}

.poster:hover{
  transform:scale(1.03);
}

.poster img{
  width:100%;
  height:250px;
  object-fit:cover;
}

.posterText{
  padding:20px;
}

.posterText h3{
  margin-top:0;
}

/* ========================= */
/* TIPS + FACTS + CHALLENGE */
/* ========================= */

#tips,
#facts,
#challenge{
  padding:60px 20px;
}

/* GRID */

.tips-grid,
.facts-grid{

  display:grid;

  grid-template-columns:
  repeat(auto-fit,minmax(250px,1fr));

  gap:20px;

  margin-top:30px;
}

/* KOTAK */

.tips-card,
.fact-box,
.challenge-box{

  background:rgba(255,255,255,0.92);

  color:#0b4d2b;

  padding:25px;

  border-radius:20px;

  box-shadow:
  0 8px 20px rgba(0,0,0,0.25);

  backdrop-filter:blur(5px);

  transition:0.3s;
}

/* HOVER */

.tips-card:hover,
.fact-box:hover,
.challenge-box:hover{

  transform:
  translateY(-8px)
  scale(1.03);

  box-shadow:
  0 12px 25px rgba(0,0,0,0.35);
}

/* CHALLENGE */

.challenge-box{

  max-width:500px;

  margin:auto;
}

.challenge-box button{

  margin-top:15px;

  cursor:pointer;

  font-size:16px;
}

.challenge-box h3{
  font-size:28px;
}

.challenge-box button:hover{

  background:#12a05a;

  transform:scale(1.05);
}

#challengeText{

  margin-top:20px;

  font-size:20px;

  font-weight:bold;

  color:#0b4d2b;
}

.tips-card h3,
.fact-box h3{
  margin-top:0;
}