/* Solution pages and guides.

   A separate file, loaded only by the two templates that need it, because
   public.css is held to a size budget and the home page has no business
   carrying the styles for a page type it never renders. Splitting it is the
   honest way to stay inside that budget; raising the budget to fit would
   have made every visitor pay for it.

   These pages are read rather than scanned, which is the opposite of every
   other page on the marketing site: one measure, generous leading, and
   nothing competing with the words. */
/* Written pages: solution pages and guides. One measure, generous leading,
   nothing competing with the text. These are read rather than scanned, which
   is the opposite of every other page on this site. */
.written { padding: clamp(2.5rem, 5vw, 4.5rem) 0 clamp(3rem, 6vw, 5rem);}
.written .wrap { max-width: 760px;}
.crumbs { margin: 0 0 1.5rem;color: var(--ink-soft);font-size: .8rem;}
.crumbs a { color: var(--ink-soft);}
.written-head h1 { margin: 0 0 1rem;font-size: clamp(2.1rem, 4.5vw, 3rem);letter-spacing: -.035em;line-height: 1.08;}
/* The sentence the page exists to have quoted. Given weight on the page so
   the visible words and the structured data are the same words. */
.written-answer { margin: 0 0 1.1rem;padding-left: 1rem;border-left: 3px solid var(--brand-accent);color: var(--ink);font-size: 1.12rem;font-weight: 600;line-height: 1.55;}
.written .lede { margin: 0 0 .8rem;color: var(--ink-soft);font-size: 1.05rem;line-height: 1.65;}
.written-meta { margin: 0;color: var(--ink-soft);font-size: .78rem;}
.prose { margin-top: 2.2rem;color: var(--ink);font-size: 1.02rem;line-height: 1.72;}
.prose h2 { margin: 2.2rem 0 .7rem;font-size: 1.45rem;letter-spacing: -.02em;line-height: 1.25;}
.prose h3 { margin: 1.6rem 0 .5rem;font-size: 1.12rem;}
.prose p { margin: 0 0 1.1rem;}
.prose ul, .prose ol { margin: 0 0 1.2rem;padding-left: 1.3rem;}
.prose li { margin-bottom: .45rem;}
.prose blockquote { margin: 1.4rem 0;padding: .2rem 0 .2rem 1.1rem;border-left: 3px solid var(--line);color: var(--ink-soft);}
.written-faq { margin-top: 2.8rem;padding-top: 1.8rem;border-top: 1px solid var(--line);}
.written-faq h3 { margin: 1.4rem 0 .35rem;font-size: 1.02rem;}
.written-faq p { margin: 0;color: var(--ink-soft);line-height: 1.65;}
.written-cta { margin-top: 2.8rem;padding: 1.6rem;border: 1px solid var(--line);border-radius: 14px;background: var(--surface-soft, #f3f8f8);}
.written-cta p { margin: 0 0 1rem;font-size: 1.05rem;font-weight: 600;}
.written-cta .text-link { margin-left: 1rem;}
.written-related { margin-top: 2.5rem;padding-top: 1.5rem;border-top: 1px solid var(--line);}
.written-related ul { margin: 0;padding-left: 1.1rem;}
.written-related li { margin-bottom: .4rem;}
.written-list { margin: 0 0 2rem;padding: 0;list-style: none;}
.written-list li { padding: .9rem 0;border-bottom: 1px solid var(--line);}
.written-list a { text-decoration: none;}
.written-list span { display: block;margin-top: .2rem;color: var(--ink-soft);font-size: .9rem;line-height: 1.55;}
