/* Final targeted control layout and review contrast. Scoped to existing forms. */
@media (max-width:767px) {
  body #calc-form #lead-calc-form {
    display:flex;
    flex-direction:column;
    gap:11px;
    width:100%;
    min-width:0;
  }
  body #calc-form #lead-calc-form > div:has(> label) {
    display:flex;
    flex-direction:column;
    min-width:0;
    width:100%;
    gap:6px;
  }
  body #calc-form #lead-calc-form > div > label:not(.sr-only) {
    display:block;
    box-sizing:border-box;
    width:100%;
    height:20px;
    min-height:20px;
    margin:0 !important;
    font-size:13px !important;
    font-weight:600 !important;
    line-height:20px !important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  body #calc-form #lead-calc-form > div > input:not([type="hidden"]),
  body #calc-form #lead-calc-form .nsv-picker-trigger,
  body #calc-form #lead-calc-form > button[type="submit"] {
    display:flex;
    align-items:center;
    box-sizing:border-box;
    width:100%;
    min-width:0;
    height:46px;
    min-height:46px;
    max-height:46px;
    border-radius:12px;
    line-height:1.25;
    margin-block:0;
  }
  body #calc-form #lead-calc-form > div > input:not([type="hidden"]) {
    display:block;
    padding:0 14px;
    font-size:16px !important;
    font-weight:500;
    line-height:normal;
  }
  body #calc-form #lead-calc-form .nsv-service-picker {
    width:100%;
    min-width:0;
  }
  body #calc-form #lead-calc-form .nsv-picker-trigger {
    padding:0 14px;
    font-size:16px !important;
    font-weight:500;
  }
  body #calc-form #lead-calc-form > button[type="submit"] {
    justify-content:center;
    align-self:stretch;
    padding:0 12px;
    font-size:14px !important;
    font-weight:800;
    line-height:1.2;
    text-align:center;
    white-space:nowrap;
    letter-spacing:.015em;
    margin-top:8px !important;
  }
  /* A consistent mobile hierarchy: all regular descriptions normal weight;
     equal-level card headings and labels have matching emphasis. */
  body #services .service-card p,
  body #features p,
  body #why-us p,
  body #reviews [data-source] p,
  body #calc-form h2 + p,
  body .nsv-seo-deep .nsv-deep-card p {
    font-weight:400 !important;
  }
  body #services .service-card h3,
  body #features h3,
  body #why-us h4,
  body .nsv-seo-deep .nsv-deep-card h3 {
    font-weight:700 !important;
  }
}
@media (min-width:768px) {
  body #calc-form #lead-form {
    align-items:stretch;
  }
  body #calc-form #lead-form > div {
    display:flex;
    min-width:0;
    align-items:stretch;
  }
  body #calc-form #lead-form > div > input:not([type="hidden"]),
  body #calc-form #lead-form .nsv-picker-trigger,
  body #calc-form #lead-form > div > button[type="submit"] {
    box-sizing:border-box;
    width:100%;
    min-width:0;
    height:54px;
    min-height:54px;
    max-height:54px;
    border-radius:12px;
  }
  body #calc-form #lead-form .nsv-service-picker {
    width:100%;
    min-width:0;
  }
  body #calc-form #lead-form .nsv-picker-trigger {
    display:flex;
    align-items:center;
    padding:0 12px;
    font-weight:500;
  }
  body #calc-form #lead-form > div > button[type="submit"] {
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 7px;
    white-space:nowrap;
    text-align:center;
    font-size:clamp(12.5px,1.37vw,14.5px) !important;
    line-height:1.15;
  }
  /* Keep the review size unchanged; improve text contrast only. */
  body #reviews [data-source] p {
    color:#101827 !important;
  }
  body #reviews [data-source] .text-slate-400 {
    color:#1f2937 !important;
  }
}