/* === Fonts: Nunito (self-hosted on iGEM static) === */
@font-face {
  font-family: 'Nunito';
  src: url('https://static.igem.wiki/teams/5732/images/fonts/nunito-medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Nunito';
  src: url('https://static.igem.wiki/teams/5732/images/fonts/nunito-semibold.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

/* === Global === */
body {
  padding-top: 56px;
  background: linear-gradient(to right, #e9fbee, #fdfbe6, #fefcf3);
  background-attachment: fixed;
}

.left-aligned {
  margin-left: auto;
}

.bg-dark {
  background-color: #92bfa0 !important;
}

/* === Hero Section (inner page header) === */
.bg-hero {
  position: relative;
  z-index: 0;
  background-image: url('https://static.igem.wiki/teams/5732/images/mona-header2.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: clamp(160px, 22vw, 260px);
  color: #e59453;
  text-shadow: 0 1px 2px rgba(0,0,0,0.35);
  border-top: 1px solid rgba(255,255,255,0.35);
  border-bottom: 1px solid rgba(0,0,0,0.12);
}
.bg-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(135deg, rgba(40, 55, 48, 0.78), rgba(60, 80, 68, 0.66)),
    radial-gradient(120% 100% at 50% 0%, rgba(0,0,0,0.14), rgba(0,0,0,0.24));
}
.bg-hero > * {
  position: relative;
  z-index: 1;
}
@media (max-width: 576px) {
  .bg-hero::after {
    background:
      linear-gradient(135deg, rgba(40, 55, 48, 0.86), rgba(60, 80, 68, 0.74)),
      radial-gradient(120% 100% at 50% 0%, rgba(0,0,0,0.18), rgba(0,0,0,0.28));
  }
}

/* === Navbar typography (menu only) === */
.navbar-brand,
.navbar-nav .nav-link {
  font-family: 'Nunito', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  font-weight: 600;         
  font-size: 1.1rem;
  letter-spacing: 0.3px;    
  color: #fff !important;
  position: relative;
  transition: color .25s ease;
}

/* 一级菜单悬停：浅黄 */
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus {
  color: #fcf7c1 !important;
}

/* 下划线动画 */
.navbar-nav .nav-link::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -4px;
  width: 0;
  height: 2px;
  background: #fef9c5;
  transition: all .3s ease;
}
.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after {
  left: 0;
  width: 100%;
}

/* 当前页态：浅绿 + 下划线 */
.navbar-nav .nav-link.active,
.navbar-nav .nav-link[aria-current="page"] {
  color: #e9fbee !important;
  font-weight: 600;
}

/* === Dropdown 子菜单 hover: 浅绿色背景 === */
.dropdown-menu .dropdown-item:hover,
.dropdown-menu .dropdown-item:focus {
  background-color: #d4f7bb;
  color: #000;  /* 文字保持深色，保证可读性 */
}

/* === CALLOUT === */
.bd-callout { padding:1.25rem; margin-top:1.25rem; margin-bottom:1.25rem; border:1px solid #e9ecef; border-left-width:.25rem; border-radius:.25rem }
.bd-callout h4 { margin-bottom: 1.25rem }
.bd-callout p:last-child { margin-bottom:0 }
.bd-callout code { border-radius:.25rem }
.bd-callout+.bd-callout { margin-top:-.25rem }
.bd-callout-info { border-left-color:#5bc0de }
.bd-callout-warning { border-left-color:#f0ad4e }
.bd-callout-danger { border-left-color:#d9534f }

/* === Footer === */
footer a { color: white; font-weight: bold; text-decoration: none; }
footer a:hover { color: white; text-decoration: underline; }
.footer-logos {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
}
.footer-logos img {
  max-height: 60px;
  width: auto;
  object-fit: contain;
  transition: transform 0.2s ease;
}
.footer-logos img:hover {
  transform: scale(1.05);
}

/* === Custom Cursor === */
body {
  cursor: url('https://static.igem.wiki/teams/5732/images/censor/censor-1a.webp'), auto;
}

a, a:hover, a:focus {
  cursor: pointer; 
}
