/* ==========================================================================
   Standard Page template — About / Terms / Privacy / Cookies / generic prose
   Uses the design system; controls only typography + page-specific spacing.
   ========================================================================== */

.vfh-standard-hero,
.vfh-archive-hero { padding: 90px 0 50px; background: var(--vfh-bg-light); border-bottom: 1px solid var(--vfh-rule); }

/* Single blog post: no separator lines — beige hero + image + body all
   sit on the same surface. Padding handles the breathing room instead. */
.vfh-single-hero { padding: 90px 0 30px; background: var(--vfh-bg-light); border-bottom: 0; }
.vfh-standard-hero h1,
.vfh-archive-hero h1 { font-family: var(--ff); font-weight: 300; font-size: clamp(40px, 5.4vw, 64px); line-height: 1.05; letter-spacing: -.02em; color: var(--vfh-ink); }
.vfh-standard-hero h1 em,
.vfh-archive-hero h1 em { font-style: italic; font-weight: 400; }

/* Single blog post — narrower container (matches body) + reduced H1 scale */
.vfh-single-hero .wrap { max-width: 820px; }
.vfh-single-hero h1 { font-family: var(--ff); font-weight: 400; font-size: clamp(28px, 3.4vw, 40px); line-height: 1.15; letter-spacing: -.01em; color: var(--vfh-ink); }
.vfh-single-hero h1 em { font-style: italic; font-weight: 500; }
.vfh-archive-hero .eyebrow,
.vfh-single-hero__meta { font-size: 11px; letter-spacing: .28em; text-transform: uppercase; color: var(--vfh-muted); font-weight: 600; margin-bottom: 14px; }
.vfh-single-hero__cat { color: var(--vfh-purple); }
.vfh-single-hero__lede { font-family: var(--ff); font-style: italic; font-size: 21px; color: var(--vfh-muted); margin-top: 18px; max-width: 720px; }
/* Featured image — sits flush with the hero (same bg, no rule between),
   generous breathing space below before the body content begins. */
.vfh-single-feature { padding: 10px 0 60px; background: var(--vfh-bg-light); }
.vfh-single-feature .wrap { max-width: 820px; }
.vfh-single-feature img { width: 100%; height: auto; border-radius: 14px; display: block; }

/* Body padding on single posts:
   - WITHOUT a featured image (hero is directly above body): comfortable 60px
   - WITH a featured image (feature sibling provides its own 60px below): 20px */
body.single .vfh-standard { padding-top: 60px; }
body.single .vfh-single-feature + .vfh-standard { padding-top: 20px; }

.vfh-standard{padding:70px 0 110px}
.vfh-standard .wrap{max-width:820px}
.vfh-standard .entry-content{font-size:17px;line-height:1.7;color:var(--vfh-body)}

/* Prose typography */
.vfh-standard .entry-content > * + *{margin-top:18px}
.vfh-standard .entry-content p{font-size:17px;color:var(--vfh-body)}
.vfh-standard .entry-content .lead,
.vfh-standard .entry-content > p:first-child{font-size:21px;color:var(--vfh-ink);line-height:1.5;margin-bottom:30px}

.vfh-standard .entry-content h2{font-family:var(--ff);font-weight:400;font-size:clamp(26px,3.2vw,34px);letter-spacing:-.01em;color:var(--vfh-ink);margin-top:48px;margin-bottom:14px;line-height:1.2}
.vfh-standard .entry-content h3{font-family:var(--ff);font-weight:600;font-size:21px;letter-spacing:-.005em;color:var(--vfh-ink);margin-top:36px;margin-bottom:10px;line-height:1.3}
.vfh-standard .entry-content h4{font-family:var(--ff);font-weight:600;font-size:17px;letter-spacing:.02em;text-transform:uppercase;color:var(--vfh-muted);margin-top:30px;margin-bottom:8px}

.vfh-standard .entry-content ul,
.vfh-standard .entry-content ol{padding-left:22px}
.vfh-standard .entry-content li{margin-bottom:8px}
.vfh-standard .entry-content ul li{list-style:disc}
.vfh-standard .entry-content ol li{list-style:decimal}

.vfh-standard .entry-content a:not(.btn){color:var(--vfh-purple);border-bottom:1px solid currentColor;padding-bottom:1px;transition:color .15s}
.vfh-standard .entry-content a:not(.btn):hover{color:var(--vfh-purple-deep,#6B5B96)}

/* Buttons inside .entry-content keep the canonical .btn styling — never the
   inline-link treatment above. Small top margin so it sits cleanly below
   preceding paragraphs. */
.vfh-standard .entry-content a.btn{margin-top:8px}

.vfh-standard .entry-content blockquote{margin:30px 0;padding:6px 0 6px 24px;border-left:3px solid var(--vfh-purple);font-family:var(--ff);font-style:italic;font-size:21px;color:var(--vfh-ink);line-height:1.45}
.vfh-standard .entry-content blockquote p{font-size:21px;color:inherit}

.vfh-standard .entry-content hr{border:0;border-top:1px solid var(--vfh-rule);margin:40px 0}
.vfh-standard .entry-content code{background:var(--vfh-rule);padding:2px 6px;border-radius:4px;font-size:.9em}

/* Tables (rare on these pages but keeps it tidy) */
.vfh-standard .entry-content table{width:100%;border-collapse:collapse;margin:24px 0}
.vfh-standard .entry-content th,
.vfh-standard .entry-content td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--vfh-rule);font-size:15px}
.vfh-standard .entry-content th{font-weight:600;color:var(--vfh-ink)}

/* Images embedded in content */
.vfh-standard .entry-content img{max-width:100%;height:auto;border-radius:8px;margin:16px 0}
