/* PlanTrippr — shared Sources & accuracy section styling (brand-matched, self-contained) */
.pt-sources { padding: 36px 0 8px; }
.pt-sources__inner { max-width: 820px; margin: 0 auto; padding: 0 32px; }
.pt-sources__kicker { font-family: var(--font-mono, ui-monospace, monospace); font-size: 11px;
  letter-spacing: 0.12em; text-transform: uppercase; color: var(--accent, #1B3A6B); margin-bottom: 8px; }
.pt-sources__title { font-family: var(--font-serif, Georgia, serif); font-weight: 600;
  font-size: clamp(1.5rem, 2.8vw, 1.95rem); line-height: 1.15; letter-spacing: -0.02em;
  color: var(--ink, var(--ink-solid, #16140F)); margin-bottom: 12px; }
.pt-sources__body { font-size: 15px; line-height: 1.6; color: var(--ink-soft, #3D392F);
  margin: 0 0 14px; max-width: 64ch; }
.pt-sources__body a { color: var(--accent, #1B3A6B); text-decoration: underline; }
.pt-sources__verified { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px;
  font-family: var(--font-mono, ui-monospace, monospace); font-size: 12.5px; letter-spacing: 0.04em;
  color: var(--muted, var(--muted-solid, #6F6A5E)); margin: 0 0 12px; }
.pt-sources__verified strong { color: var(--ink, var(--ink-solid, #16140F)); font-weight: 600; }
.pt-sources__verified a { color: var(--accent, #1B3A6B); font-weight: 600;
  border-bottom: 1px solid var(--accent-line, #B9C7DC); transition: opacity 150ms ease; }
.pt-sources__verified a:hover { opacity: 0.75; }
.pt-sources__note { font-size: 12.5px; line-height: 1.55; color: var(--muted, var(--muted-solid, #6F6A5E));
  max-width: 70ch; margin: 0; }
@media (max-width: 560px) { .pt-sources__inner { padding: 0 20px; } }

/* PlanTrippr — shared FAQ section styling (brand-matched, self-contained) */
.pt-faq { padding: 44px 0 16px; }
.pt-faq__inner { max-width: 820px; margin: 0 auto; padding: 0 32px; }
.pt-faq__kicker { font-family: var(--font-mono, ui-monospace, monospace); font-size: 11px;
  letter-spacing: 0.12em; text-transform: uppercase; color: var(--accent, #1B3A6B); margin-bottom: 8px; }
.pt-faq__title { font-family: var(--font-serif, Georgia, serif); font-weight: 600;
  font-size: clamp(1.6rem, 3vw, 2.1rem); line-height: 1.15; letter-spacing: -0.02em;
  color: var(--ink, var(--ink-solid, #16140F)); margin-bottom: 10px; }
.pt-faq__intro { font-size: 15px; line-height: 1.55; color: var(--ink-soft, #3D392F);
  margin-bottom: 24px; max-width: 62ch; }
.pt-faq__list { display: flex; flex-direction: column; gap: 12px; }
.pt-faq__item { background: var(--bg-2, #F3F0E8); border: 1px solid var(--line, var(--line-solid, #DEDACE));
  border-radius: 12px; overflow: hidden; transition: border-color 180ms ease; }
.pt-faq__item[open] { border-color: var(--accent-line, #B9C7DC); }
.pt-faq__q { list-style: none; cursor: pointer; padding: 18px 22px;
  font-family: var(--font-body, system-ui, sans-serif); font-weight: 500; font-size: 15.5px;
  color: var(--ink, var(--ink-solid, #16140F)); display: flex; justify-content: space-between;
  align-items: center; gap: 14px; }
.pt-faq__q::-webkit-details-marker { display: none; }
.pt-faq__q::after { content: '+'; flex-shrink: 0; font-family: var(--font-mono, monospace);
  font-size: 20px; font-weight: 500; line-height: 1; color: var(--accent, #1B3A6B);
  transition: transform 200ms ease; }
.pt-faq__item[open] .pt-faq__q::after { content: '\2212'; }
.pt-faq__a { padding: 0 22px 18px; font-size: 14.5px; line-height: 1.6;
  color: var(--ink-soft, #3D392F); }
.pt-faq__a p { margin: 0; }
.pt-faq__a a { color: var(--accent, #1B3A6B); text-decoration: underline; }
.pt-faq__note { margin-top: 18px; font-size: 12.5px; line-height: 1.55;
  color: var(--muted, var(--muted-solid, #6F6A5E)); max-width: 70ch; }
@media (max-width: 560px) {
  .pt-faq__inner { padding: 0 20px; }
  .pt-faq__q { padding: 16px 18px; font-size: 15px; }
  .pt-faq__a { padding: 0 18px 16px; }
}
