/* ── Contact Panel / Form ─────────────────────────────────── */
.vf-contact-panel h3{margin:0 0 4px;font-size:22px;color:var(--text-heading)}
.vf-contact-panel__sub{margin:0 0 var(--space-5);font-size:15px;color:var(--text-muted)}
.vf-contact-panel__fields{display:flex;flex-direction:column;gap:var(--space-4)}
.vf-contact-panel__note{margin:4px 0 0;font-size:12px;color:var(--text-muted);text-align:center}
.vf-field{display:flex;flex-direction:column;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-heading)}
.vf-field input,.vf-field select,.vf-field textarea{padding:10px 14px;border:1px solid var(--border-default);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--fs-sm);color:var(--text-body);background:var(--white);transition:border-color var(--dur)}
.vf-field input:focus,.vf-field select:focus,.vf-field textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:var(--ring-focus)}
.vf-field textarea{resize:vertical;min-height:88px}
.vf-btn--full{width:100%;justify-content:center}

/* ── Service / Location pages ─────────────────────────────── */
.vf-service-list{list-style:none;padding:0;margin:0}
.vf-service-list li{padding:var(--space-3) 0;border-bottom:1px solid var(--border-default)}
.vf-map-placeholder{min-height:260px;display:grid;place-items:center;background:var(--gray-100);border-radius:var(--radius-lg);color:var(--text-muted)}
.vf-review-placeholder{font-style:italic;color:var(--text-muted)}

/* ── PRD 1.5: Location + Service page templates ───────────── */
/* Gray section (alias for vf-section--tint) */
.vf-section--gray{background:var(--surface-section)}
/* Trust badge (design naming: vf-trust-badge) */
.vf-trust-badge{display:flex;align-items:center;gap:14px}
.vf-trust-badge__icon{width:42px;height:42px;border-radius:var(--radius-md);background:var(--blue-50);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-secondary)}
.vf-trust-badge__text strong{display:block;font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:var(--fs-sm);color:var(--text-heading)}
.vf-trust-badge__text span{font-size:13px;color:var(--text-muted)}
/* Page hero intro paragraph (design naming; same style as .vf-page-hero .vf-lead) */
.vf-page-hero__intro{font-size:var(--fs-lead);line-height:1.55;color:var(--navy-100);max-width:52ch;margin:0 0 24px}
/* Page hero inner — z-index context so content sits above ::before */
.vf-page-hero__inner{position:relative;z-index:1}
/* Page hero dot-bg (::before already handles dots; div is inert) */
.vf-page-hero__dot-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
/* Hero call button (two-line label + number) */
.vf-hero-call-btn{display:inline-flex;align-items:center;gap:12px;padding:15px 26px;border-radius:var(--radius-md);background:var(--color-cta);color:#fff;box-shadow:var(--shadow-cta);text-decoration:none;transition:background var(--dur)}
.vf-hero-call-btn:hover{background:var(--color-cta-hover);color:#fff;text-decoration:none}
.vf-hero-call-btn__text{display:flex;flex-direction:column;line-height:1.15;align-items:flex-start}
.vf-hero-call-btn__label{font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.06em;text-transform:uppercase;opacity:.85;font-family:var(--font-heading)}
.vf-hero-call-btn__number{font-size:21px;font-weight:var(--fw-extrabold);letter-spacing:.01em;font-family:var(--font-heading)}
/* Hero schedule outline button */
.vf-hero-schedule-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:17px 32px;border-radius:var(--radius-md);background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.5);text-decoration:none;font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:18px;line-height:1;white-space:nowrap;transition:background var(--dur)}
.vf-hero-schedule-btn:hover{background:rgba(255,255,255,.1);color:#fff;text-decoration:none}
/* Hero bullet list */
.vf-page-hero__bullets{display:flex;flex-wrap:wrap;gap:14px 24px;margin-top:var(--space-6)}
.vf-page-hero__bullets span{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;color:var(--navy-100);font-weight:var(--fw-semibold)}
/* Hero bullet checkmark SVG — fix CSS var in presentation attribute */
.vf-page-hero__bullets span svg{stroke:var(--orange-300)}
/* Breadcrumbs — flex row with gap (overrides components.css block layout) */
.vf-breadcrumbs{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-heading);font-weight:var(--fw-semibold)}
/* Breadcrumb current segment */
.vf-breadcrumbs__current{color:inherit}
.vf-breadcrumbs--dark .vf-breadcrumbs__current{color:#fff}
/* Section head — constrain to 640px matching design source */
.vf-section-head{max-width:640px;margin-inline:auto}
/* Location intro: 1.1fr text / 0.9fr photo */
.vf-local-split{display:grid;grid-template-columns:1.1fr 0.9fr;gap:48px;align-items:center}
/* 3-col service card grid */
.vf-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
/* Service card link — styled via descendant selector matching design source */
.vf-service-card a{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-bold);font-family:var(--font-heading);color:var(--color-secondary);margin-top:var(--space-2);text-decoration:none}
.vf-service-card a:hover{color:var(--color-primary)}
/* Review card footer row (design naming) */
.vf-review-card__footer{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:6px}
.vf-review-card__name{font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:14.5px;color:var(--text-heading)}
/* Override components.css which defines .vf-review-card__meta as a flex wrapper;
   in our templates it is a plain text label inside .vf-review-card__footer */
.vf-review-card__footer .vf-review-card__meta{display:block;margin-top:0;padding-top:0;font-size:13px;color:var(--text-muted)}
/* Review star SVGs — fix CSS var in presentation attribute */
.vf-review-card__stars svg{fill:var(--color-star);stroke:none}
/* FAQ answer panel (design uses __answer; JS toggles is-open on __item) */
.vf-faq__answer{display:none;padding-bottom:var(--space-5);font-size:15px;line-height:1.65;color:var(--text-body)}
.vf-faq__item.is-open .vf-faq__answer{display:block}
/* FAQ chevron SVG — fix CSS var in presentation attribute */
.vf-faq__chevron{stroke:var(--color-secondary)}
/* Emergency CTA — navy+blue gradient (design naming) */
.vf-emergency{background:linear-gradient(120deg,var(--navy-700),var(--blue-600));color:#fff;border-radius:var(--radius-xl);padding:var(--space-10) var(--space-12);display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);flex-wrap:wrap}
.vf-emergency__phone-icon{width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.vf-emergency__body h3{font-size:24px;color:#fff;margin:0 0 6px}
.vf-emergency__body p{color:var(--navy-100);font-size:15px;margin:0}
.vf-emergency__actions{display:flex;gap:12px;flex-wrap:wrap}
/* White CTA button (for use on dark sections like .vf-emergency) */
.vf-btn--white{background:#fff;color:var(--color-cta);box-shadow:var(--shadow-lg);border-color:transparent}
.vf-btn--white:hover{background:#fff;color:var(--color-cta-hover);transform:translateY(-1px)}
/* Contact card (service page hero sidebar) */
.vf-contact-card{background:#fff;border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-lg)}
.vf-contact-card h3{font-size:22px;color:var(--text-heading);margin:0 0 4px}
.vf-contact-card>p{font-size:14.5px;color:var(--text-muted);margin:0 0 var(--space-6)}
.vf-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.vf-form-field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
.vf-form-field label{font-size:13px;font-weight:var(--fw-semibold);color:var(--text-heading);font-family:var(--font-heading)}
.vf-form-field input,.vf-form-field select,.vf-form-field textarea{padding:10px 14px;border:1.5px solid var(--border-default);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:15px;color:var(--text-heading);background:#fff;width:100%}
.vf-form-field input:focus,.vf-form-field select:focus,.vf-form-field textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:var(--ring-focus)}
.vf-form-field textarea{resize:vertical;min-height:80px}
.vf-form-submit{display:block;width:100%;padding:14px;background:var(--color-cta);color:#fff;border:none;border-radius:var(--radius-pill);font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:16px;cursor:pointer;box-shadow:var(--shadow-cta);text-align:center;text-decoration:none;transition:background var(--dur)}
.vf-form-submit:hover{background:var(--color-cta-hover);color:#fff;text-decoration:none}
/* Left-aligned section head */
.vf-section-head--left{text-align:left;margin-bottom:var(--space-8)}
.vf-section-head--left h2{font-size:var(--fs-h2);margin:8px 0 14px}
/* Sidebar call card (design naming: hyphen, not BEM) */
.vf-sidebar-call{background:var(--navy-600);color:#fff;border-radius:var(--radius-lg);padding:var(--space-6)}
.vf-sidebar-call h3{color:#fff;font-size:20px;margin:0 0 6px}
.vf-sidebar-call p{color:var(--navy-100);font-size:14.5px;margin:0 0 var(--space-4);line-height:1.5}

/* ── Gravity Forms — match .vf-field design ──────────────── */
.vf-contact-panel .gform_wrapper{margin:0;padding:0}
.vf-contact-panel .gform_fields{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}
.vf-contact-panel .gfield{margin:0}
.vf-contact-panel .gfield_label{display:block;font-size:var(--fs-sm);font-weight:var(--fw-semibold);margin-bottom:4px;color:var(--text-heading)}
.vf-contact-panel .ginput_container input,
.vf-contact-panel .ginput_container select,
.vf-contact-panel .ginput_container textarea{width:100%;padding:10px 14px;font-size:15px;font-family:var(--font-body);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--white);color:var(--text-body);-webkit-appearance:none;appearance:none;transition:border-color var(--dur)}
.vf-contact-panel .ginput_container input:focus,
.vf-contact-panel .ginput_container select:focus,
.vf-contact-panel .ginput_container textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:var(--ring-focus)}
.vf-contact-panel .ginput_container textarea{resize:vertical;min-height:88px}
.vf-contact-panel .gform_footer,.vf-contact-panel .gform_page_footer,.vf-contact-panel .gform-footer{margin-top:4px;padding:0}
.vf-contact-panel .gform_submit,
.vf-contact-panel .gform_button,
.vf-contact-panel input[type="submit"],
.vf-contact-panel button[type="submit"]{width:100%;padding:14px;background:var(--color-cta);color:#fff;font-size:16px;font-weight:var(--fw-bold);font-family:var(--font-heading);border:none;border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-cta);transition:background var(--dur)}
.vf-contact-panel .gform_submit:hover,
.vf-contact-panel .gform_button:hover,
.vf-contact-panel input[type="submit"]:hover,
.vf-contact-panel button[type="submit"]:hover{background:var(--color-cta-hover)}
.vf-contact-panel .gform_required_legend{font-size:12px;color:var(--text-muted);margin-bottom:6px}
.vf-contact-panel .gfield_required{color:var(--color-cta)}
.vf-contact-panel .validation_message{font-size:12px;color:var(--red-600);margin-top:3px}
.vf-contact-panel .gform_validation_errors{font-size:13px;color:var(--red-600);margin-bottom:12px;padding:10px 14px;border-radius:var(--radius-md);background:var(--red-50,#fef2f2);border:1px solid var(--red-200,#fecaca)}
.vf-contact-panel .gform_confirmation_message{font-size:15px;color:var(--text-heading);padding:var(--space-5);text-align:center;font-weight:var(--fw-semibold)}

/* ── Hero form custom (homepage only, scoped to .vf-hero__form) ── */
.vf-hero-form{display:flex;flex-direction:column;gap:16px}
/* Match design Field.jsx: 1.5px border, radius-sm, 12/14 padding, 16px font */
.vf-hero__form .vf-field input,
.vf-hero__form .vf-field select,
.vf-hero__form .vf-field textarea{border:1.5px solid var(--border-default);border-radius:var(--radius-sm);padding:12px 14px;font-size:16px}
.vf-hero__form .vf-field input:focus,
.vf-hero__form .vf-field select:focus,
.vf-hero__form .vf-field textarea:focus{border-color:var(--border-focus);box-shadow:var(--ring-focus)}
.vf-hero__form .vf-field textarea{min-height:72px}
/* Submit button — radius-md not pill */
.vf-hero-form .vf-btn{border-radius:var(--radius-md)}
/* Required asterisk */
.vf-field__req{color:var(--color-cta);font-weight:var(--fw-extrabold)}
/* Inline status messages */
.vf-hero-form__status{padding:10px 14px;border-radius:var(--radius-md);font-size:14px;font-family:var(--font-heading);font-weight:var(--fw-semibold);line-height:1.45}
.vf-hero-form__status--success{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}
.vf-hero-form__status--error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}

/* ── Blog (Release: Claude Design import — Van Fleet - Blog.html) ── */
/* Small pill tag — post category label */
.vf-badge{display:inline-flex;align-items:center;font-family:var(--font-heading);font-size:12px;font-weight:var(--fw-bold);letter-spacing:.02em;padding:3px 11px;border-radius:var(--radius-pill);background:var(--blue-50);color:var(--color-secondary)}
/* Post card */
.vf-blog-card{display:flex;flex-direction:column;text-decoration:none;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-xs);height:100%;transition:box-shadow var(--dur),transform var(--dur)}
.vf-blog-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);text-decoration:none}
.vf-blog-card__media{aspect-ratio:16/10;background:var(--gray-100)}
.vf-blog-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.vf-blog-card__body{padding:20px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.vf-blog-card__meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.vf-blog-card__date{font-size:13px;color:var(--text-muted)}
.vf-blog-card__body h3{margin:0;font-size:19px;color:var(--text-heading);line-height:1.25}
.vf-blog-card__body p{margin:0;font-size:15px;line-height:1.55;color:var(--text-body)}
.vf-blog-card__readmore{margin-top:auto;padding-top:6px;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:14px;color:var(--text-link)}
/* Featured post — horizontal layout on desktop */
.vf-blog-card--featured{flex-direction:row}
.vf-blog-card--featured .vf-blog-card__media{flex:0 0 46%;aspect-ratio:auto}
.vf-blog-card--featured .vf-blog-card__body{padding:32px;justify-content:center}
.vf-blog-card--featured .vf-blog-card__body h3{font-size:26px}
/* Category filter chips */
.vf-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.vf-chip{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:14px;padding:9px 18px;border-radius:var(--radius-pill);border:1.5px solid var(--border-strong);background:#fff;color:var(--text-body);text-decoration:none}
.vf-chip:hover{border-color:var(--color-primary);color:var(--text-body);text-decoration:none}
.vf-chip__count{font-size:12px;font-weight:var(--fw-bold);padding:1px 8px;border-radius:var(--radius-pill);background:var(--gray-100);color:var(--text-muted)}
.vf-chip.is-active{border-color:var(--color-primary);background:var(--color-primary);color:#fff}
.vf-chip.is-active .vf-chip__count{background:rgba(255,255,255,.22);color:#fff}
/* Pagination (paginate_links() output) */
.vf-pagination{display:flex;justify-content:center;gap:8px;margin-top:var(--space-10);flex-wrap:wrap}
.vf-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border-radius:var(--radius-md);border:1.5px solid var(--border-default);font-family:var(--font-heading);font-weight:var(--fw-semibold);font-size:14px;color:var(--text-body);text-decoration:none}
.vf-pagination .page-numbers:hover{border-color:var(--color-primary);color:var(--color-primary);text-decoration:none}
.vf-pagination .page-numbers.current{background:var(--color-primary);border-color:var(--color-primary);color:#fff}
.vf-pagination .page-numbers.dots{border:none}

/* ── Legal pages (Release: Claude Design import — Van Fleet - Terms.html) ── */
/* Reusable for Terms, Privacy Policy, Accessibility, Warranty, etc. */
.vf-legal-grid{display:grid;grid-template-columns:240px 1fr;gap:48px;align-items:start}
.vf-legal-toc{display:block}
.vf-legal-toc__label{font-family:var(--font-heading);font-size:12px;font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 14px}
.vf-legal-toc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.vf-legal-toc a{font-size:14.5px;color:var(--text-link);font-weight:var(--fw-semibold)}
.vf-legal-body{max-width:720px}
.vf-legal-body__updated{font-size:14px;color:var(--text-muted);margin:0 0 28px}
.vf-legal-body h2{font-size:var(--fs-h3);margin:0 0 14px;scroll-margin-top:92px}
.vf-legal-body h2:not(:first-child){margin-top:36px}
.vf-legal-body p{font-size:16.5px;line-height:1.7;color:var(--text-body);margin:0 0 16px}
.vf-legal-body strong{font-weight:var(--fw-semibold);color:var(--text-heading)}
.vf-legal-body a{color:var(--text-link);text-decoration:underline}
.vf-legal-body ul{margin:0 0 16px;padding-left:22px;display:flex;flex-direction:column;gap:8px}
.vf-legal-body ul li{font-size:16.5px;line-height:1.6;color:var(--text-body)}
.vf-legal-body__cta{margin-top:40px;padding:24px 26px;background:var(--surface-section);border-radius:var(--radius-lg);border:1px solid var(--border-default)}
.vf-legal-body__cta h3{margin:0 0 6px;font-size:18px}
.vf-legal-body__cta p{margin:0 0 16px;font-size:15px}

/* ── Reviews page ──────────────────────────────────────────── */
.vf-rating-summary{display:flex;align-items:center;gap:40px;padding-block:32px;flex-wrap:wrap}
.vf-rating-summary__score{text-align:center}
.vf-rating-summary__number{font-family:var(--font-heading);font-weight:var(--fw-extrabold);font-size:56px;line-height:1;color:var(--color-primary)}
.vf-rating-summary__count{font-size:14px;color:var(--text-muted);margin-top:6px}
.vf-rating-summary__bars{flex:1;min-width:260px;display:flex;flex-direction:column;gap:8px}
.vf-rating-summary__actions{display:flex;flex-direction:column;gap:10px}
.vf-rating-bar{display:flex;align-items:center;gap:12px}
.vf-rating-bar__label{width:28px;font-size:13px;color:var(--text-muted);font-weight:var(--fw-semibold)}
.vf-rating-bar__track{flex:1;height:8px;background:var(--gray-100);border-radius:var(--radius-pill);overflow:hidden}
.vf-rating-bar__fill{display:block;height:100%;background:var(--color-star);border-radius:var(--radius-pill)}
.vf-rating-bar__pct{width:36px;font-size:13px;color:var(--text-muted);text-align:right}

/* ── Offers page ───────────────────────────────────────────── */
.vf-offer-card{position:relative;display:flex;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}
.vf-offer-card__value{flex:0 0 38%;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 14px;text-align:center}
.vf-offer-card--orange .vf-offer-card__value{background:var(--orange-500)}
.vf-offer-card--navy .vf-offer-card__value{background:var(--navy-600)}
.vf-offer-card--blue .vf-offer-card__value{background:var(--blue-500)}
.vf-offer-card__amount{font-family:var(--font-heading);font-weight:var(--fw-extrabold);font-size:34px;line-height:1}
.vf-offer-card__tag{font-size:12px;font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;margin-top:8px;opacity:.92}
.vf-offer-card__body{flex:1;border-left:2px dashed var(--border-strong);padding:22px;display:flex;flex-direction:column;gap:8px}
.vf-offer-card__label{margin:0;font-size:19px;color:var(--text-heading)}
.vf-offer-card__sub{margin:0;font-size:14px;color:var(--text-muted)}
.vf-offer-card__code{margin-top:4px;display:inline-flex;align-items:center;gap:8px;align-self:flex-start;border:1.5px dashed var(--border-strong);border-radius:var(--radius-sm);padding:6px 12px;font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:14px;color:var(--text-heading);letter-spacing:.04em}
.vf-offer-card__footer{margin-top:auto;padding-top:8px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.vf-offer-card__exp{font-size:12.5px;color:var(--text-muted)}
.vf-offer-card__redeem{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:13.5px;color:var(--text-link)}
.vf-offer-card--orange .vf-offer-card__redeem{color:var(--orange-500)}
.vf-offer-card--navy .vf-offer-card__redeem{color:var(--navy-600)}
.vf-offer-card--blue .vf-offer-card__redeem{color:var(--blue-500)}

/* ── Badge tone modifiers (base .vf-badge is blue) ───────────── */
.vf-badge--green{background:var(--green-50);color:var(--green-600)}
.vf-badge--navy{background:var(--navy-50);color:var(--navy-600)}
.vf-badge--orange{background:var(--orange-50);color:var(--orange-600)}

/* ── Financing page ───────────────────────────────────────────── */
.vf-financing-form{display:flex;flex-direction:column;gap:var(--space-4)}
.vf-financing-form h3{margin:0 0 4px;font-size:22px;color:var(--text-heading)}
.vf-form-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--text-muted);line-height:1.5;margin:4px 0}
.vf-form-consent input{margin-top:3px;flex-shrink:0}

/* ── Schedule Service page ───────────────────────────────────── */
.vf-schedule-form{display:flex;flex-direction:column;gap:var(--space-4)}
.vf-schedule-form h3{margin:0 0 4px;font-size:22px;color:var(--text-heading)}
.vf-schedule-form__urgency{margin-bottom:8px}
.vf-schedule-form__urgency-label,.vf-schedule-form__label{display:block;font-size:13px;font-weight:var(--fw-semibold);color:var(--text-heading);font-family:var(--font-heading);margin-bottom:8px}
.vf-urgency{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.vf-urgency__option{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;border-radius:var(--radius-md);border:1.5px solid var(--border-strong);background:#fff;font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:14px;color:var(--text-body);cursor:pointer;transition:var(--dur)}
.vf-urgency__option:has(.vf-urgency__input:checked){background:var(--tone);border-color:var(--tone);color:#fff}
.vf-urgency__input{position:absolute;opacity:0;width:0;height:0}
.vf-time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.vf-time-option{display:flex;align-items:center;gap:8px;padding:11px 12px;border:1.5px solid var(--border-default);border-radius:var(--radius-sm);font-size:14px;color:var(--text-body);cursor:pointer;transition:var(--dur)}
.vf-time-option:has(input:checked){border-color:var(--color-primary);background:var(--blue-50)}

/* ── Blog Post (single.php) — Claude Design import: Van Fleet - Blog Post.html ── */
.vf-post-meta{display:flex;align-items:center;gap:12px;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--border-default)}
.vf-post-meta__avatar{width:44px;height:44px;border-radius:50%;background:var(--navy-600);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:var(--fw-bold);flex-shrink:0}
.vf-post-meta__name{font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:15px;color:var(--text-heading)}
.vf-post-meta__date{font-size:13px;color:var(--text-muted)}
.vf-post-content h2{font-size:23px;margin:0 0 10px}
.vf-post-content h3{font-size:19px;margin:24px 0 8px}
.vf-post-content p{font-size:17px;line-height:1.7;color:var(--text-body);margin:0 0 22px}
.vf-post-content ul,.vf-post-content ol{margin:0 0 22px;padding-left:22px;display:flex;flex-direction:column;gap:8px}
.vf-post-content li{font-size:17px;line-height:1.6;color:var(--text-body)}
.vf-post-content a{color:var(--text-link);text-decoration:underline}
.vf-post-content strong{font-weight:var(--fw-semibold);color:var(--text-heading)}
.vf-post-content img{max-width:100%;height:auto;border-radius:var(--radius-lg);margin:0 0 22px}
.vf-related-articles a{display:block;padding:12px 0;border-top:1px solid var(--border-default);text-decoration:none}
.vf-related-articles__cat{font-size:12px;color:var(--color-secondary);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.05em}
.vf-related-articles__title{font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:15px;color:var(--text-heading);line-height:1.3;margin-top:3px}
