/* Post Your Requirements — responsive fixes only (desktop ≥1200px untouched).
   At ≤768px the global cp-responsive.css turns every .row into a flex column (cols keep their
   bootstrap % width) and forces .form-control{height:46px !important}; doubled selectors out-rank it. */
@media (max-width: 768px) {
    .cp-req-section .container > .row.row > [class*="col-"] { width: 100%; max-width: 100%; flex: none; padding-left: 0; padding-right: 0; }
    .cp-req-section .container > .row > h3 { margin: 0; padding: 0; font-size: clamp(20px, 5.6vw, 24px); }
    .cp-req-section form .row.row {
        display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px !important;
        margin-left: 0; margin-right: 0;
    }
    .cp-req-section form .row.row > [class*="col-"] { width: 100%; max-width: 100%; flex: none; padding: 0; }
    .cp-req-section form .row.row > .col-lg-12, .cp-req-section form .row.row > .col-12 { grid-column: 1 / -1; }
    .cp-req-section .form-group label { font-size: 14px; }
    .cp-req-section .form-control { font-size: 16px !important; margin-bottom: 0 !important; }
    .cp-req-section form textarea.form-control.simple { height: auto !important; min-height: 110px; }
    .cp-req-section #text label.form-control { height: auto !important; line-height: 1.6; }
    .cp-req-section .cp-requirement-option { min-height: 44px; align-items: center !important; font-size: 14px; }
    .cp-req-section .cp-requirement-option input { margin: 0; flex: 0 0 auto; }
    .cp-req-section #myCheck + label { display: inline; margin-left: 6px; font-size: 14px; }
    .cp-req-section input[type="submit"] { width: 100%; min-height: 50px; }
    .cp-req-section .contact-info { margin-top: 12px; padding-left: 0; padding-right: 0; }
    .cp-req-section .contact-info a { overflow-wrap: anywhere; }
}
@media (max-width: 480px) {
    .cp-req-section form .row.row { grid-template-columns: 1fr; }
}
