/* "From" price style for the 2026-10-17 buyer-page previews. Cards copy the approved pricing.html
   (office/reports/2026-10-17-cv-pricing-from); the lines under them reuse its .pl-inc / .pl-budget look. */
.fr-block { max-width:1040px; margin:0 auto; text-align:left; font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif; }
.fr-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:6px 0 18px; }
.fr-card { border:1px solid #e4e2dc; border-radius:12px; padding:20px 20px 18px; background:#fff; position:relative; text-align:left; }
.fr-card.rec { border-color:#d4af37; box-shadow:0 0 0 1px #d4af37; }
.fr-tag { position:absolute; top:-11px; left:16px; background:#d4af37; color:#0a0a0a; font:700 11px/1 Inter,sans-serif; letter-spacing:.08em; text-transform:uppercase; padding:5px 8px; border-radius:4px; }
.fr-card h3 { margin:0 0 2px; font-size:15px; letter-spacing:.06em; text-transform:uppercase; color:#0a0a0a; }
.fr-hours { margin:0 0 12px; color:#6b7280; font-size:14px; }
.fr-price { margin:0 0 10px; font-size:34px; font-weight:800; line-height:1; color:#0a0a0a; }
.fr-price small { display:block; font-size:12px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:#6b7280; margin-bottom:4px; }
.fr-get { margin:0; font-size:14px; color:#33383f; }
.fr-note { font-size:15px; line-height:1.55; color:#33383f; margin:0 0 6px; }
.fr-note strong { color:#0a0a0a; }
.pl-inc { margin:14px 0 0; font-size:14.5px; line-height:1.55; color:#33383f; }
.pl-budget { margin:14px 0 0; font-size:14.5px; line-height:1.55; color:#0a0a0a; background:#f7f6f2; border-radius:10px; padding:14px 16px; }
.fr-cta { margin:22px 0 0; text-align:center; }
.fr-after { max-width:1040px; margin:22px auto 0; }
.fr-after .pl-budget { display:block; }
.fr-after.fr-narrow { max-width:760px; margin-bottom:26px; }

/* homepage: three of the site's own price cards in the right-hand column */
.price-options.fr-home { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.fr-home .price-card { padding:24px 18px 22px; position:relative; }
.fr-home .price-card.fr-rec { border-color:#d4af37; box-shadow:0 0 0 1px #d4af37; }
.fr-home .price { font-size:clamp(30px,2.5vw,38px); }
.fr-home .price-card .price-includes { font-size:14px; }
.fr-home .fr-span { grid-column:1 / -1; margin-top:0; }
.fr-home .pl-budget { margin-top:0; }

@media (max-width:760px) {
  .fr-cards, .price-options.fr-home { grid-template-columns:1fr; }
  .fr-home .price-card { padding:22px 20px; }
}

/* two cards (executive headshot landing page) */
.fr-cards.fr-two { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:760px; margin-left:auto; margin-right:auto; }
.fr-get a { color:inherit; font-weight:600; }
@media (max-width:760px) { .fr-cards.fr-two { grid-template-columns:1fr; } }
