.cfs-hp { position:absolute!important; left:-10000px!important; opacity:0!important; height:0!important; width:0!important; pointer-events:none!important; }
.cfs-lead-status { margin:12px 0 18px; padding:13px 16px; border-left:4px solid #20708a; background:#eef6f9; color:#243b48; font:600 14px/1.45 Arial,sans-serif; }
.cfs-lead-status:empty { display:none; }
.cfs-lead-status.is-error {background:#fff1ef; border-left-color:#bd4f3a;}
.cfs-lead-status.is-success {background:#eff9f5; border-left-color:#24704c;}

/* v0.2.15: compact, contextual one-page CFS Pro / volume-pricing form.
   Scoped so Contact and Project Quote forms retain their original presentation. */
.pricing-v2-card { padding: 18px 20px !important; }
.pricing-v2-card .cfs-launch-inquiry-form.cfs-pricing-compact {
  max-width: none; padding: 0; border: 0; border-radius: 0; box-shadow: none;
  background: transparent; display: grid; gap: 11px; box-sizing: border-box;
}
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-intro { margin: 0; }
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-kicker {
  display:block; font: 700 10px/1.3 Arial,sans-serif; letter-spacing: .12em;
  color:#b4551f; margin:0 0 5px;
}
.pricing-v2-card .cfs-pricing-compact h2 {
  color: #1e2a32; font-size:clamp(20px,2vw,24px); line-height:1.17; margin:0 0 5px;
  letter-spacing:-.028em;
}
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-intro p {
  color:#5c6871; line-height:1.36; font-size:12.5px; margin:0;
}
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-context {
  border-left:3px solid #e8782e; background:#f2f6f8; border-radius:4px;
  padding:7px 9px; display:flex; align-items:center; flex-wrap:wrap; gap:5px 8px;
  font:700 12px/1.25 Arial,sans-serif; color:#254558;
}
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-context small {
  color:#687883; font-size:10.5px; font-weight:400;
}
.pricing-v2-card .cfs-pricing-compact label {
  margin:0; min-width:0; display:flex; flex-direction:column; gap:4px;
  font: 650 12px/1.25 Arial,sans-serif; color:#253441;
}
.pricing-v2-card .cfs-pricing-compact .cfs-lead-grid {
  display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap:9px 11px;
}
.pricing-v2-card .cfs-pricing-compact input:not([type="hidden"]),
.pricing-v2-card .cfs-pricing-compact select,
.pricing-v2-card .cfs-pricing-compact textarea {
  border:1px solid #bdc9d1; background:white; padding:7px 10px; min-height:35px;
  height:35px; border-radius:5px; font:400 13px/1.3 Arial,sans-serif;
  color:#1e2a35; margin:0; width:100%; box-sizing:border-box;
}
.pricing-v2-card .cfs-pricing-compact input:focus-visible,
.pricing-v2-card .cfs-pricing-compact select:focus-visible,
.pricing-v2-card .cfs-pricing-compact textarea:focus-visible {
  outline:2px solid #236b8c; outline-offset:1px;
}
.pricing-v2-card .cfs-pricing-compact select { padding-right:27px; }
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-more {
  margin:0; border:1px solid #dce5eb; border-radius:6px; padding:0 10px;
  background:#f8fafb;
}
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-more summary {
  list-style:revert; cursor:pointer; color:#2d5166; font:700 12px/1.4 Arial,sans-serif;
  padding:9px 2px;
}
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-more summary span {
  font-weight:400; color:#6e7d87;
}
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-extra {display:grid; gap:8px; padding:0 0 10px;}
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-extra textarea {
  height:auto; min-height:64px; max-width:100%; resize:vertical;
}
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-submit {
  display:block; margin:0 !important; padding:10px 14px !important;
  width:100%; min-height:42px; border:0; border-radius:5px;
  font:700 14px/1.3 Arial,sans-serif !important; background:#e87529 !important;
  color:#fff!important; cursor:pointer;
}
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-submit:disabled { opacity:.65; cursor:wait; }
.pricing-v2-card .cfs-pricing-compact .cfs-pricing-trust {
  margin:-5px 0 0; text-align:center; font:500 11px/1.35 Arial,sans-serif;
  color:#516672;
}
.pricing-v2-card .cfs-pricing-compact .cfs-lead-note {
  margin:0; font:400 10px/1.35 Arial,sans-serif; color:#697783;
}
@media (max-width:510px){
  .pricing-v2-card { padding:15px 14px !important; }
  .pricing-v2-card .cfs-pricing-compact .cfs-lead-grid {gap:9px;}
  .pricing-v2-card .cfs-pricing-compact .cfs-pricing-intro p {font-size:12px;}
}
@media (max-width:380px){
  .pricing-v2-card .cfs-pricing-compact .cfs-lead-grid {grid-template-columns:1fr;}
}
/* The original two-step progress markup is removed in the theme. Backup hiding
   protects older provisioned body variations until the page is refreshed. */
.pricing-v2-card .pricing-v2-progress,
.pricing-v2-card #tbdone { display: none !important; }
@media (min-width:960px) and (max-width:1080px) {
  .pricing-v2-grid {grid-template-columns:minmax(0,1fr) 475px !important;gap:22px !important;}
}

/* 0.2.16: only the legacy bulk-pricing page; retain all other form layouts. */
body.page .pricing-v2 {padding-top:28px;padding-bottom:38px;}
body.page .pricing-v2-grid {gap:24px;}
body.page .pricing-v2-copy .sub {font-size:15px;line-height:1.46;}
body.page .pricing-v2-proof {margin-top:18px;gap:9px;}
body.page .pricing-v2-card {align-self:start;}
body.page .pricing-v2-card .cfs-pricing-compact .cfs-pricing-more {margin:0;}
body.page .pricing-v2-card .cfs-pricing-compact .cfs-pricing-submit {margin:0!important;}
@media(max-width:1080px){body.page .pricing-v2-grid {gap:20px;}}
@media(max-width:760px){body.page .pricing-v2 {padding:24px 0 30px;}}
