/* ======================================================
   Aspire — Light Theme
   Keep palette, switch surfaces to light
   ====================================================== */
:root{
  --asp-purple:#4B0E68;
  --asp-maroon:#890E3D;
  --asp-slate:#66717E;
  --asp-sand:#D9B166;
  --asp-mauve:#B29CAA;

  --asp-ink:#0E0E10;     /* for headings */
  --asp-text:#2b2b2b;    /* body text */
  --asp-muted:#6b6b76;   /* meta text */
  --asp-paper:#ffffff;   /* surfaces */
  --asp-soft:#f7f7fb;    /* section bg / subtle */
  --asp-border:#e6e6ef;
  --radius-xl: 18px;
}

/* Base */
html{scroll-behavior:smooth}
body{
  background:#fff;
  color:var(--asp-text);
}

/* Links & buttons */
a{color:var(--asp-purple); text-decoration:none}
a:hover{text-decoration:underline}
.btn-asp{background:var(--asp-maroon); color:#fff; border:none}
.btn-asp:hover{background:#6f0b2f; color:#fff}
.btn-alt{background:var(--asp-purple); color:#fff; border:none}
.btn-alt:hover{background:#3a0b52; color:#fff}

/* Header bar (your purple strip) */
.header-gradient{
  background: linear-gradient(135deg, #efe9f7 0%, #f6e8ee 100%);
  border-bottom:1px solid var(--asp-border);
}

/* Cards & surfaces */
.card-asp{
  background:#fff;
  border:1px solid var(--asp-border);
  border-radius:var(--radius-xl);
  overflow:hidden;
  box-shadow:0 2px 8px rgba(10,10,30,.04);
}
.card-asp .card-img-top{border-bottom:1px solid var(--asp-border)}

/* Sections */
.section-title{color:var(--asp-ink); font-weight:800}

/* Alerts */
.alert-asp{
  background:#fff7e6;            /* soft sand tint */
  border:1px solid #f2e0b8;
  color:#6b4d0a;
  border-radius:12px;
}

/* Navbar (Understrap often outputs navbar-dark) — force light look */
.navbar-dark,
.navbar-dark .navbar-nav .nav-link,
.navbar-dark .navbar-brand{
  color:#2d2d34 !important;
}
.navbar-dark .navbar-nav .nav-link:hover{
  color:var(--asp-purple) !important;
}

/* Footer */
.footer-asp{
  background:#fafafa;
  color:#3a3a42;
  border-top:1px solid var(--asp-border);
}

/* Badges */
.badge-asp{
  background:var(--asp-sand);
  color:#1a1a1a;
  font-weight:600;
}

/* Hero blocks */
.hero-card{
  border-radius:var(--radius-xl);
  padding:2.25rem;
  color:#1e1e26;
  background: linear-gradient(135deg, #efe9f7 0%, #f6e8ee 60%);
  position:relative; overflow:hidden;
}
.hero-card:before{content:none}  /* no dark overlay */

/* Utilities */
.mt-6{margin-top:3rem}
.mb-6{margin-bottom:3rem}

/* ---------- Single Post Styling ---------- */
.post-hero img{border-radius:1rem; object-fit:cover}
.post-title{font-size:2.25rem; font-weight:800; color:var(--asp-ink)}
.post-meta{font-size:.92rem; color:var(--asp-muted)}
.post-meta a.cat-link{color:var(--asp-purple)}
.post-meta a.cat-link:hover{text-decoration:underline}

/* Subhead H3 at article start */
.post-subhead{
  background:#f2edf7;
  border:1px solid var(--asp-border);
  color:#2b2140;
  font-weight:600;
  line-height:1.45;
  font-size:1.15rem;
  border-radius:14px;
}

/* Article body */
.post-content{font-size:1.07rem; line-height:1.85; color:var(--asp-text)}
.post-content h2,.post-content h3,.post-content h4{color:var(--asp-ink); margin-top:1.8em}
.post-content a{color:var(--asp-purple); text-decoration:underline}
.post-content a:hover{color:#3a0b52}

/* Tag chips */
.post-tags a{
  background-color:#efe9f7 !important;
  color:#2b2140 !important;
  border:1px solid var(--asp-border);
}
.post-tags a:hover{
  background-color:#e7dbf5 !important;
}

/* Home tiles */
.card-asp .card-body .text-muted{color:#6f7280 !important}
