/* =========================
   Adam Smith Seminars — Clean CSS
   ========================= */

/* Theme tokens */
:root {
  --bg:#ffffff;
  --panel:rgba(255,255,255,.96);
  --text:#1d1d1d;
  --muted:#585858;
  --brand:#0b3d91;   /* deep academic blue */
  --border:#e8e3d8;
  --radius:14px;
  --maxw:980px;
}

/* Base */
* { box-sizing: border-box; }
html { color-scheme: light; scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: "Questrial", Arial, sans-serif;
  font-weight: 400;
  color: var(--text);
  line-height: 1.65;

  /* Global background */
  background-color: var(--bg);
  background-image: url("../img/procope.png");
  background-size: cover;
  background-position: 50% 20%;
  background-repeat: no-repeat;
  background-attachment: scroll;
}

/* Kill any legacy overlay */
body::before { content: none !important; }

/* Layout helpers */
.container { width: 100%; max-width: var(--maxw); margin: 0 auto; padding: 0 20px; }

/* Main & hero */
main { padding: 48px 0 80px; }
.hero { text-align: center; margin: 50px auto 20px; max-width: 900px; }
.lead { color: var(--muted); font-size: 1.05rem; max-width: 72ch; margin: 0 auto; }

/* Hero portrait */
.hero-figure {
  display: block;
  margin: 40px auto;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 6px 18px rgba(0,0,0,.12));
}
@media (min-width:1200px) {
  .hero-figure { width: clamp(300px, 50vw, 720px); }
}
@media (max-width:480px) {
  .hero-figure { width: clamp(180px, 60vw, 420px); margin-bottom: 12px; }
}

/* Grid/cards */
.grid.two { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 20px; }
@media (max-width:780px) { .grid.two { grid-template-columns: 1fr; } }
.card {
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 18px;
  box-shadow: 0 8px 24px rgba(0,0,0,.07);
}

/* Prose */
.prose p { max-width: 78ch; }
blockquote {
  border-left: 3px solid var(--brand);
  background: #fff;
  padding: 10px 14px;
  margin: 12px 0;
  border-radius: 10px;
}

/* Buttons & links */
.btn {
  display: inline-block;
  text-decoration: none;
  padding: 10px 16px;
  border: 1px solid var(--border);
  border-radius: 12px;
  color: #222;
  background: #fff;
}
.btn.primary {
  background: linear-gradient(135deg, rgba(11,61,145,.10), rgba(140,107,47,.06));
  border-color: rgba(11,61,145,.22);
}
.list-links { list-style: none; padding: 0; }
.list-links li { margin: 10px 0; }
.list-links a { text-decoration: none; color: var(--brand); }
.list-links a:hover { text-decoration: underline; }
.list-links a .meta { display: block; color: var(--muted); font-size: .9rem; }

/* Footer */
.site-footer {
  border-top: 1px solid var(--border);
  color: var(--muted);
  font-size: .95rem;
  padding: 22px 0;
}

/* Background adjust for phones */
@media (max-width:780px) {
  body { background-position: 50% 0%; }
}

/* Shared container for centered sections */
.site-container {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

/* Full-width banner background */
.site-banner {
  width: 100%;
  background-color: rgba(255,255,255,0.65); /* translucent white */
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

/* Center inner content */
.site-banner-inner {
  max-width: 900px;
  margin: 0 auto;
  padding: 40px 20px 20px;
  text-align: center;
}

.site-title {
  font-family: "Questrial", Arial, sans-serif;
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 400;
  margin: 0 0 20px;
  letter-spacing: 0.8px;
  color: #000;
}
.site-title a {
  color: #000;
  text-decoration: none;
}
.site-title a:hover { color: #444; }

.site-nav {
  display: flex;
  justify-content: center;
  gap: 40px;
  flex-wrap: wrap;
}
.site-nav a {
  font-family: "Questrial", Arial, sans-serif;
  font-size: 1.1rem;
  font-weight: 400;
  color: #000;
  text-decoration: none;
}
.site-nav a:hover { color: #444; }

.page-content {
  text-align: justify;
  max-width: 900px;
  margin: 0 auto;
  padding: 20px 28px;
  background-color: rgba(255,255,255,0.75);
  border-radius: 12px;
}

.site-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: rgba(255,255,255,0.85); /* translucent white */
  box-shadow: 0 -4px 12px rgba(0,0,0,0.1);   /* subtle shadow above */
  text-align: center;
  padding: 14px 20px;
  font-size: 0.95rem;
  color: #000;
  z-index: 50; /* stays above background */
}

.site-footer .footer-inner {
  max-width: 900px;
  margin: 0 auto;
}

  #email .email-link,
#email .email-link:visited {
  color: #000 !important;           /* black text */
  text-decoration: none !important; /* no underline */
}

#email .email-link:hover,
#email .email-link:active {
  color: #444 !important;           /* subtle hover */
  text-decoration: underline;       /* optional: remove if you want none on hover */
}

  

