/* Blog pages. Loaded after subpage.css: same background, nav and footer,
   with a wider column and text bright enough to read for ten minutes. */

.post-main {
  width: 100%;
  max-width: 680px;
  margin-top: 36px;
  animation: fadeUp 0.55s ease both;
}

.post-main h1 {
  font-family: 'Fredoka One', cursive;
  font-size: clamp(30px, 6vw, 44px);
  line-height: 1.15;
  color: var(--gold-bright);
  letter-spacing: 0.5px;
  margin-bottom: 14px;
}

.post-meta {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(240,200,112,0.5);
  margin-bottom: 26px;
}

.post-body {
  font-size: 17px;
  line-height: 1.7;
  font-weight: 500;
  color: rgba(253,246,236,0.84);
}

.post-body > * + * { margin-top: 18px; }

.post-body .answer {
  font-size: 19px;
  line-height: 1.6;
  font-weight: 700;
  color: rgba(253,246,236,0.95);
}

.post-body .method {
  font-size: 14px;
  line-height: 1.6;
  color: rgba(253,246,236,0.66);
  border-left: 3px solid rgba(196,138,58,0.5);
  padding: 4px 0 4px 14px;
}

.post-body h2 {
  font-family: 'Nunito', sans-serif;
  font-size: 24px;
  line-height: 1.3;
  font-weight: 900;
  color: var(--gold-bright);
  margin-top: 44px;
}

.post-body h3 {
  font-size: 19px;
  line-height: 1.35;
  font-weight: 800;
  color: rgba(240,200,112,0.9);
  margin-top: 30px;
}

.post-body ul, .post-body ol { padding-left: 22px; }
.post-body li + li { margin-top: 8px; }
.post-body li::marker { color: rgba(196,138,58,0.7); }

.post-body strong { color: #fff; }

.post-body a {
  color: var(--gold-bright);
  text-decoration: none;
  border-bottom: 1px solid rgba(240,200,112,0.45);
}

.post-body a:hover { border-color: var(--gold-bright); }

.post-body figure { margin: 30px 0; text-align: center; }

.post-body figure img {
  max-width: 300px;
  width: 100%;
  height: auto;
  border-radius: 22px;
  border: 1px solid rgba(196,138,58,0.25);
}

.post-body figcaption {
  font-size: 13px;
  color: rgba(253,246,236,0.55);
  margin-top: 10px;
}

.table-wrap { overflow-x: auto; }

.post-body table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
  line-height: 1.5;
}

.post-body th, .post-body td {
  text-align: left;
  vertical-align: top;
  padding: 10px 12px;
  border-bottom: 1px solid rgba(196,138,58,0.2);
}

.post-body th {
  color: var(--gold-bright);
  font-weight: 800;
}

.post-cta {
  margin-top: 40px;
  padding: 22px;
  border-radius: 18px;
  background: rgba(196,138,58,0.1);
  border: 1px solid rgba(196,138,58,0.28);
}

.post-cta p { margin: 0; }
.post-cta p + p { margin-top: 10px; }

.post-sources {
  font-size: 14px;
  color: rgba(253,246,236,0.6);
}

.post-sources a { border-bottom-color: rgba(240,200,112,0.25); }

/* The index */
.post-list { list-style: none; padding: 0; margin-top: 10px; }
.post-list li { padding: 22px 0; border-bottom: 1px solid rgba(196,138,58,0.15); }
.post-list li + li { margin-top: 0; }
.post-list a { border: 0; }
.post-list h2 { margin-top: 0; font-size: 21px; }
.post-list p { margin-top: 8px; }
.post-list .post-meta { margin: 8px 0 0; }

footer.post-foot { max-width: 680px; }

@media (max-width: 480px) {
  .post-body { font-size: 16px; }
  .post-body .answer { font-size: 17px; }
  .post-body h2 { font-size: 21px; }
}
