/* Reset & Base */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Inter", sans-serif;
}
.navbar-dark .navbar-nav .nav-link.active {
  background-color: #ffcc00 !important; /* bright yellow */
  color: #000 !important;              /* black text for contrast */
  border-radius: 6px;
  font-weight: 700;
}

body {
  background: #fafafa;
  color: #222;
  line-height: 1.6;
}

.container {
  width: 90%;
  max-width: 1100px;
  margin: auto;
  padding: 2rem 0;
}

/* Blog Grid spacing */
#blogGrid .col { display: flex; }
#blogGrid .pro-card {
  border: 1px solid rgba(2,6,23,.08);
  border-radius: 14px;
  transition: transform .18s ease, box-shadow .18s ease;
}
#blogGrid .pro-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 30px rgba(2,6,23,.12);
}

/* Images inside cards */
#blogGrid .card-img-top {
  aspect-ratio: 16/9;
  object-fit: cover;
  border-top-left-radius: 14px;
  border-top-right-radius: 14px;
}
#blogGrid .card-body { padding: 1rem 1rem 1.25rem; }
#blogGrid .card small { color:#6b7280 !important; }

/* Clamp excerpts */
.clamp-3 {
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Buttons (brand yellow) */
.btn-warning {
  --bs-btn-bg: #feff00 !important;
  --bs-btn-border-color: #feff00 !important;
  --bs-btn-color: #111 !important;
  --bs-btn-hover-bg: #dbdf00 !important;
  --bs-btn-hover-border-color: #dbdf00 !important;
  --bs-btn-active-bg: #c4c800 !important;
  --bs-btn-active-border-color: #c4c800 !important;
  --bs-btn-focus-shadow-rgb: 254,255,0 !important;
}

/* Brand blue for navbar + footer */
header.bg-dark,
.navbar.bg-dark,
.site-footer,
.site-footer.bg-dark {
  background: #000096 !important;
  background-color: #000096 !important;
}

/* Navbar link styles */
/* Navbar default link styles */
.navbar-dark .navbar-nav .nav-link,
.navbar-dark .navbar-nav .nav-link:visited {
  color: #fff !important;
  font-weight: 700 !important;
}
.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
  color: #ffffff !important;
  opacity: 1;
}

/* Active pill (yellow background + black text = passes accessibility) */
.navbar-dark .navbar-nav .nav-link.active {
  background-color: #ffcc00 !important;
  color: #000 !important;
  border-radius: 6px;
  font-weight: 800;
}
.navbar-dark .navbar-nav .nav-link.active:hover,
.navbar-dark .navbar-nav .nav-link.active:focus {
  color: #000 !important;
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
  color: #ffffff !important;
  opacity: 1;
}

/* --- Navbar --- */
.navbar {
  padding-top: .35rem !important;
  padding-bottom: .35rem !important;
  min-height: 56px;
  /* Yellow glow shadow */
  box-shadow: 0 4px 0 #feff00, 0 6px 14px rgba(254,255,0,.35) !important;
  z-index: 1030;
}

/* Remove extra padding inside container */
.navbar > .container,
.navbar > .container-fluid {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Logo size (controls overall height) */
.navbar-brand .navbar-logo {
  height: 46px !important;  /* tweak this value to make navbar taller/shorter */
  width: auto !important;
}
@media (min-width: 992px){
  .navbar-brand .navbar-logo { height: 50px !important; }
}

/* Nav links padding */
.navbar .nav-link {
  padding-top: .45rem !important;
  padding-bottom: .45rem !important;
  line-height: 1.2 !important;
}

/* Button inside navbar */
.navbar .btn {
  padding-top: .25rem !important;
  padding-bottom: .25rem !important;
}

/* --- Site Header (not navbar) --- */
.site-header {
  background: #0b1220;
  padding: 1rem 0;
  color: #fff;
}
.site-header .logo {
  font-size: 1.5rem;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
}
.site-header .logo span { color: #facc15; }
.main-nav { margin-top: 1rem; }
.main-nav a {
  color: #ccc;
  margin-right: 1rem;
  text-decoration: none;
}
.main-nav a:hover { color: #fff; }

/* Blog Grid */
.blog-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
  margin-top: 2rem;
}
.blog-card {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 10px;
  overflow: hidden;
  padding: 1rem;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  transition: 0.3s ease;
}
.blog-card:hover { box-shadow: 0 0 15px rgba(0, 0, 0, 0.15); }
.blog-card img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 8px;
  margin-bottom: 1rem;
}
.blog-card h2 {
  font-size: 1.2rem;
  margin-bottom: 0.5rem;
  color: #0f172a;
}
.blog-card p {
  color: #4b5563;
  margin-bottom: 1rem;
}
.btn-read {
  background: #facc15;
  color: #111;
  padding: 0.5rem 1rem;
  text-decoration: none;
  border-radius: 5px;
  font-weight: bold;
}
.btn-read:hover { background: #eab308; }

/* Footer */
.site-footer {
  background: #0b1220;
  color: #bbb;
  text-align: center;
  padding: 1rem;
  margin-top: 2rem;
  font-size: 0.9rem;
}

/* Navbar collapsed view */
@media (max-width: 991.98px) {
  #mainNav .navbar-nav {
    text-align: right;
    margin-right: 10px;
  }
  #mainNav .nav-item { padding-right: 10px; }
  .cta-freecoins { width: 100%; text-align: center; }
}

/* Blog thumbnails fix */
#blogGrid .blog-card img.card-img-top {
  height: 200px;
  object-fit: contain;
  object-position: center;
  background: #f8f9fa;
  border-top-left-radius: 14px;
  border-top-right-radius: 14px;
}

/* Blog grid gutters */
#blogGrid {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 1.5rem;
}
#blogGrid > .col { padding-bottom: 1.5rem; }

/* High-CTR navbar CTA */
.cta-freecoins {
  border-radius: 9999px;
  box-shadow: 0 10px 24px rgba(254,255,0,.25);
  letter-spacing:.2px;
  transform: translateZ(0);
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
  animation: ctaPulse 2.2s ease-in-out infinite;
}
.cta-freecoins:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(254,255,0,.35);
  filter: brightness(0.98);
}
@keyframes ctaPulse {
  0%,100% { box-shadow: 0 0 0 0 rgba(254,255,0,.28); }
  50%     { box-shadow: 0 0 0 10px rgba(254,255,0,.10); }
}

/* offset content so the fixed navbar doesn't cover it */
body { padding-top: 72px; }                 /* desktop-ish */
@media (max-width: 991.98px){ body { padding-top: 64px; } }  /* mobile/tablet */


/* Mobile navbar: center items + yellow active pill */
@media (max-width: 991.98px) {
  /* center the list + remove weird left alignment */
  #mainNav .navbar-nav {
    align-items: center !important;
    text-align: center !important;
  }

  /* make links look tidy/pill-like */
  #mainNav .nav-link {
    display: block;
    padding: .6rem 1rem;
    margin: .15rem 0;
    border-radius: 10px;
    color: #fff !important;               /* white text on blue */
  }
  #mainNav .nav-link:hover {
    background: rgba(255,255,255,.08);    /* soft hover */
  }

  /* ACTIVE: bright yellow pill with black text */
  #mainNav .nav-link.active {
    background: #ffcc00 !important;
    color: #000 !important;
    border-radius: 12px;
    width: 90%;
    margin: .25rem auto;                  /* center the pill */
    font-weight: 800;
  }

  /* Free Coins button full width + centered */
  #mainNav .btn.btn-warning {
    width: 90%;
    margin: .5rem auto 0;
    display: block;
    text-align: center;
    border-radius: 12px;
  }
}


