/* Cost, insurance and FAQ bands (2026-10-26): homepage, service and location pages.
   Loaded site-wide from head.php; every rule is scoped to an lv-band class. */

a[href^="tel:"] { white-space: nowrap; }

.lv-band { background: #fff; padding: 90px 20px; border-top: 1px solid rgba(184, 134, 11, 0.12); position: relative; }
.lv-band--cream { background: #FAFAF8; }
.lv-band__inner { max-width: 960px; margin: 0 auto; }
.lv-band__accent { width: 50px; height: 1px; background: #B8860B; margin: 0 auto 24px; }
.lv-band .lv-band__title { font-size: 2.5rem; font-weight: 300; color: #1a1a1a; line-height: 1.2; letter-spacing: -0.5px; margin: 0 0 20px; text-align: center; }
.lv-band .lv-band__lead { font-size: 1.1rem; line-height: 1.8; color: #444; max-width: 780px; margin: 0 auto 36px; text-align: center; }
.lv-band .lv-band__text { font-size: 1rem; line-height: 1.8; color: #555; margin: 0 0 18px; }
.lv-band .lv-band__call { font-size: 1.05rem; line-height: 1.7; color: #444; margin: 0; text-align: center; }
.lv-band a { color: #7a5a06; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.lv-band a:hover { color: #5c4405; }

.lv-band__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-bottom: 32px; }
.lv-band .lv-band__grid p { margin: 0; padding: 26px 28px; background: #FAFAF8; border-left: 3px solid #B8860B; color: #555; font-size: 0.98rem; line-height: 1.8; }
.lv-band--cream .lv-band__grid p { background: #fff; }

.lv-cost-table { width: 100%; border-collapse: collapse; margin: 0 0 28px; font-size: 0.98rem; background: #fff; }
.lv-cost-table th { text-align: left; padding: 14px 20px; font-size: 0.75rem; letter-spacing: 1.5px; text-transform: uppercase; font-weight: 600; background: rgba(184, 134, 11, 0.1); color: #5c4405; border-bottom: 2px solid rgba(184, 134, 11, 0.35); }
.lv-cost-table td { padding: 16px 20px; vertical-align: top; line-height: 1.5; color: #333; border-bottom: 1px solid rgba(184, 134, 11, 0.15); }
.lv-cost-table td:last-child, .lv-cost-table th:last-child { text-align: right; white-space: nowrap; }
.lv-cost-table td:last-child { color: #1a1a1a; font-weight: 600; }

.lv-band--faq .lv-band__title { margin-bottom: 40px; }
.lv-faq-list { display: grid; gap: 16px; max-width: 880px; margin: 0 auto; }
.lv-faq-card { background: #FAFAF8; border-left: 3px solid #B8860B; padding: 24px 28px; text-align: left; }
.lv-band--cream .lv-faq-card { background: #fff; }
.lv-band .lv-faq-card h3 { font-size: 1.15rem; font-weight: 600; color: #1a1a1a; line-height: 1.4; margin: 0 0 10px; letter-spacing: 0; }
.lv-band .lv-faq-card p { margin: 0; color: #555; font-size: 0.98rem; line-height: 1.8; }

@media (max-width: 768px) {
  .lv-band { padding: 60px 16px; }
  .lv-band .lv-band__title { font-size: 2rem; }
  .lv-band__grid { grid-template-columns: 1fr; }
  .lv-band .lv-band__grid p { padding: 22px 20px; }
  .lv-cost-table th, .lv-cost-table td { padding: 12px 12px; }
  .lv-cost-table td:last-child { white-space: normal; }
  .lv-faq-card { padding: 20px 20px; }
}
