/* Guide pages, and the /reviews/ page, which shares the article layout: article typography, tables, callouts and cards.
   Loaded after /css/site.css, which supplies the tokens, Inter, the header and the footer. Colours are tokens only. */

/* Block, not the homepage's phone flex column (site.css reorders the homepage's <main> on phones). */
.guide-main { display: block; padding: 32px 0 80px; }

.guide-article, .guide-more {
  max-width: 760px;
  margin: 0 auto;
  font-size: 17px;
  line-height: 1.7;
  color: var(--body);
}

.guide-article h1 {
  margin: 6px 0 12px;
  color: var(--ink);
  font-size: clamp(32px, 4vw, 44px);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.03em;
}
.guide-article h2 {
  margin: 48px 0 14px;
  color: var(--ink);
  font-size: clamp(23px, 2.4vw, 28px);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.guide-article h3 { margin: 32px 0 10px; color: var(--ink); font-size: 19px; line-height: 1.35; letter-spacing: -0.01em; }

.guide-article p, .guide-article ul, .guide-article ol { margin: 0 0 18px; }
.guide-article ul, .guide-article ol { padding-left: 24px; }
.guide-article li { margin: 6px 0; }
.guide-article strong { color: var(--ink); font-weight: 700; }
.guide-article a { color: var(--ink); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 0.2em; }
.guide-article a:hover { color: var(--link-hover); }
.guide-article code {
  padding: 1px 6px;
  border: 1px solid var(--hairline);
  border-radius: 4px;
  background: var(--surface);
  font-family: var(--mono);
  font-size: 0.88em;
  overflow-wrap: anywhere;
}

/* The summary under each title */
.guide-article blockquote {
  margin: 0 0 32px;
  padding: 18px 22px;
  border-left: 3px solid var(--ink);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
  background: var(--tint);
  color: var(--ink);
  font-size: 18px;
  line-height: 1.6;
}
.guide-article blockquote p:last-child { margin-bottom: 0; }

/* Breadcrumbs, review date, lead and small print */
.guide-crumbs { margin: 0 0 2px; font-size: 14px; color: var(--body); }
.guide-crumbs a {
  display: inline-flex;
  align-items: center;
  min-height: var(--tap);
  color: var(--body);
  text-decoration: none;
}
.guide-crumbs a:hover { color: var(--link-hover); text-decoration: underline; }
.guide-meta { margin: -2px 0 28px; font-size: 14px; color: var(--body); }
.guide-lead { font-size: 19px; line-height: 1.6; }
.guide-lead-small { margin-top: 28px; font-size: 15px; }
.guide-legal { margin-top: 28px; font-size: 13.5px; line-height: 1.55; color: var(--body); }
.guide-legal a { color: var(--body); }

/* Tables scroll sideways inside their own box on narrow screens */
.table-wrap {
  margin: 0 0 24px;
  overflow-x: auto;
  border: 1px solid var(--hairline);
  border-radius: var(--radius-card);
  -webkit-overflow-scrolling: touch;
}
.guide-article table { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.5; }
.guide-article th, .guide-article td { padding: 11px 14px; border-bottom: 1px solid var(--hairline); text-align: left; vertical-align: top; }
.guide-article th { background: var(--surface); color: var(--ink); font-weight: 600; }
.guide-article tr:last-child td { border-bottom: 0; }

/* Callouts (!!!kind Title ... !!! in the sources) */
.admonition {
  margin: 24px 0;
  padding: 16px 20px;
  border: 1px solid var(--hairline);
  border-left: 3px solid var(--ink);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
  background: var(--surface);
}
.admonition-title { margin: 0 0 6px; color: var(--ink); font-weight: 700; }
.admonition p:last-child { margin-bottom: 0; }

/* Reference cards ([!ref](href) in the sources, and the guides index) */
.guide-article .ref-card {
  display: block;
  margin: 12px 0;
  padding: 14px 18px;
  border: 1px solid var(--hairline);
  border-radius: var(--radius-card);
  background: var(--white);
  color: var(--ink);
  font-weight: 600;
  line-height: 1.45;
  text-decoration: none;
  transition: border-color 0.15s ease;
}
.guide-article .ref-card:hover { border-color: var(--ink); color: var(--link-hover); }
.ref-card .ref-url, .ref-card .ref-desc { display: block; margin-top: 3px; color: var(--body); font-size: 14.5px; font-weight: 400; }
.ref-card .ref-url { overflow-wrap: anywhere; }

/* Plans call to action at the end of each guide */
.guide-cta {
  margin: 48px 0 28px;
  padding: 28px 30px;
  border-radius: var(--radius-lg);
  background: var(--ink);
  color: var(--white);
}
.guide-article .guide-cta h2 { margin: 0 0 8px; color: var(--white); font-size: 24px; }
.guide-cta p { margin: 0 0 20px; color: var(--on-ink-muted); }
.guide-article .guide-cta .btn { border-color: var(--white); background: var(--white); color: var(--ink); text-decoration: none; }
.guide-article .guide-cta .btn:hover { color: var(--link-hover); }
.guide-cta :focus-visible { outline-color: var(--white); }

/* More guides */
.guide-more { margin-top: 48px; padding-top: 28px; border-top: 1px solid var(--hairline); }
.guide-more h2 { margin: 0 0 8px; color: var(--ink); font-size: 20px; font-weight: 800; letter-spacing: -0.02em; }
.guide-more ul { margin: 0; padding: 0; list-style: none; }
.guide-more li { padding: 8px 0; }
/* Inline padding: a 44px-tall hit area that does not move the text, even when a title wraps. */
.guide-more li a { padding: 12px 0; color: var(--ink); font-weight: 600; line-height: 1.4; text-decoration: none; }
.guide-more li a:hover { color: var(--link-hover); text-decoration: underline; }
.guide-more li span { display: block; font-size: 15px; line-height: 1.5; }

@media (max-width: 759.98px) {
  .guide-main { padding: 20px 0 56px; }
  .guide-article, .guide-more { font-size: 16px; }
  .guide-article blockquote { padding: 16px 18px; font-size: 17px; }
  .guide-lead { font-size: 17px; }
  .guide-cta { padding: 24px 20px; }
}

/* The small standalone pages (404, thank-you, account; pages/build.js): the article layout with room above. */
.page-article { padding-top: 32px; }
.page-actions { margin: 28px 0; }
.guide-article .page-actions .btn { text-decoration: none; }
.guide-article .page-actions .btn-primary, .guide-article .page-actions .btn-primary:hover { color: var(--white); }
