:root {
  --un-blue: #b71c1c;
  --un-dark: #4d4d4d;
  --un-gray: #f2f2f2;
  --un-footer: #333;
  --un-red: #9a0000;
}

body {
  font-family: 'Nunito', sans-serif;
  color: var(--un-dark);
  background: #fff;
  font-size: 16px;
  line-height: 1.5;
}

a { color: var(--un-blue); text-decoration: none; }
a:hover { text-decoration: underline; }

.un-header {
  background: #fff;
  padding: 16px 0;
}
.un-header .un-logo-main { height: 60px; }
.un-header .un-brand {
  border-left: 1px solid #000;
  padding-left: 20px;
  margin-left: 16px;
}
.un-header .un-brand .main-title {
  font-family: 'Roboto Condensed', sans-serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--un-dark);
}
.un-header .un-brand .sub-title {
  font-family: 'Roboto Condensed', sans-serif;
  font-size: 16px;
  color: var(--un-dark);
}

.un-navbar {
  background: var(--un-dark);
}

.un-navbar .nav-link {
  color: #fff !important;
  padding: 10px 18px !important;
  border-right: 1px solid #fff;
  font-size: 14px;
  font-weight: 400;
}
.un-navbar .nav-link:hover {
  background: var(--un-gray);
  color: var(--un-dark) !important;
  text-decoration: none;
}
.un-navbar .nav-link.active {
  background: var(--un-gray);
  color: var(--un-dark) !important;
  text-decoration: none;
  font-weight: 700;
}

.un-hero {
  background: linear-gradient(135deg, #b71c1c 0%, #7f0000 100%);
  padding: 60px 0;
  color: #fff;
}
.un-hero h1 {
  font-size: 22px;
  font-weight: 400;
  margin-bottom: 8px;
  color: #fff;
}
.un-hero p {
  font-size: 20px;
  font-weight: 400;
  opacity: 0.9;
  color: #fff;
}

.un-section {
  padding: 32px 0 48px;
}
.un-section h2 {
  font-size: 30px;
  font-weight: 500;
  margin-bottom: 16px;
}
.un-section h2::after {
  content: '';
  display: block;
  width: 70px;
  height: 3px;
  background: var(--un-blue);
  margin-top: 8px;
}

.sdg-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 16px;
}
.sdg-item {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 20px 12px;
  text-align: center;
  transition: box-shadow .2s;
  cursor: pointer;
}
.sdg-item:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,.1);
}
.sdg-item .sdg-img {
  width: 80px;
  height: 80px;
  object-fit: contain;
  display: block;
  margin: 0 auto 10px;
}
.table thead tr th {
  font-weight: 700;
  border-color: #6b0000;
}

.sdg-item .sdg-label {
  font-size: 13px;
  color: var(--un-dark);
  font-weight: 500;
}
.sdg-item { color: inherit; }

.un-footer {
  background: var(--un-footer);
  border-top: 5px solid var(--un-blue);
  color: #fff;
  font-size: 14px;
  padding: 24px 0;
}
.un-footer a { color: #fff; }
.un-footer a:hover { text-decoration: underline; }
.btn-primary {
  --bs-btn-bg: #b71c1c;
  --bs-btn-border-color: #b71c1c;
  --bs-btn-hover-bg: #7f0000;
  --bs-btn-hover-border-color: #7f0000;
  --bs-btn-active-bg: #7f0000;
  --bs-btn-active-border-color: #7f0000;
}
.btn-outline-primary {
  --bs-btn-color: #b71c1c;
  --bs-btn-border-color: #b71c1c;
  --bs-btn-hover-bg: #b71c1c;
  --bs-btn-hover-border-color: #b71c1c;
  --bs-btn-active-bg: #7f0000;
  --bs-btn-active-border-color: #7f0000;
}



.un-navbar .dropdown .nav-link.active {
  background: var(--un-gray);
  color: var(--un-dark) !important;
  font-weight: 700;
}
.un-navbar .dropdown-menu .dropdown-item.active {
  background: var(--un-gray);
  color: var(--un-dark) !important;
}

@media (max-width: 768px) {
  .un-header .un-brand .main-title { font-size: 16px; }
  .un-header .un-brand .sub-title { font-size: 13px; }
  .un-header .un-logo-main { height: 40px; }
  .un-hero h1 { font-size: 28px; }
  .un-hero p { font-size: 16px; }
  .sdg-grid { grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); }
}

/* Skala default desktop agar tampilan tidak terlalu besar/penuh layar */
@media (min-width: 992px) {
  html { zoom: 90%; }
}
