/* Only form-local CSS. Certified DS01-DS08 layout wrappers are never rewritten. */
.rr-native-form { box-sizing:border-box; height:auto!important; min-height:0!important; max-height:none!important; width:100%; max-width:100%; display:block; overflow:visible; padding:0; border-radius:inherit; color:inherit; font:inherit; background:transparent; }
.rr-native-form * { box-sizing:border-box; }
.rr-native-form__heading { margin:0 0 8px; color:inherit; font:inherit; font-weight:700; font-size:clamp(1.15rem,2vw,1.6rem); line-height:1.2; }
.rr-native-form__intro { margin:0 0 16px; line-height:1.5; }
.rr-native-form__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.rr-native-form__field { min-width:0; display:flex; flex-direction:column; gap:5px; }
.rr-native-form__field--wide { grid-column:1/-1; }
.rr-native-form__field label { font:inherit; font-size:.9rem; font-weight:600; line-height:1.35; }
.rr-native-form__field input,.rr-native-form__field select,.rr-native-form__field textarea { display:block; width:100%; min-width:0; max-width:100%; font:inherit; font-size:16px; color:#1a2932; background:#fff; border:1px solid #8796a0; border-radius:6px; padding:11px 12px; line-height:1.3; box-shadow:none; }
.rr-native-form__field textarea { min-height:98px; resize:vertical; }
.rr-native-form__field input:focus-visible,.rr-native-form__field select:focus-visible,.rr-native-form__field textarea:focus-visible,.rr-native-form__submit:focus-visible { outline:3px solid #3d8eb6; outline-offset:2px; }
.rr-native-form .cf-turnstile { margin:14px 0 8px; overflow:visible; }
.rr-native-form__submit { display:block; width:100%; cursor:pointer; font:inherit; font-weight:700; line-height:1.25; min-height:46px; margin-top:10px; padding:12px 14px; background:var(--rr-form-accent,#206743); color:#fff; border:0; border-radius:6px; }
.rr-native-form__submit:disabled { cursor:wait; opacity:.72; }
.rr-native-form__status { margin:10px 0 0; min-height:1.4em; line-height:1.4; }
.rr-native-form__status[data-status="error"] { color:#a61b1b; }
.rr-native-form__status[data-status="success"] { color:#16653b; }
.rr-native-form__honeypot { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; opacity:0!important; left:-10000px!important; }
@media(max-width:600px) { .rr-native-form { padding:0; } .rr-native-form__grid { grid-template-columns:minmax(0,1fr); } }

/* DS07 V01-V05: ensure the hero grid stacks on narrow screens; V02/V05 previously overlapped copy.
   Limit adjustment to the new native form on affected designs and small screens.
   Source DS07 archives remain immutable. */
@media (max-width:600px) {
  .hero.hero-split .hero-inner:has(.rr-native-form[data-rr-mobile-layout-fix="ds07"]) {
    grid-template-columns:minmax(0,1fr)!important;
  }
  .hero.hero-split .hero-inner:has(.rr-native-form[data-rr-mobile-layout-fix="ds07"]) .estimate-card {
    width:100%!important;min-width:0!important;max-width:100%!important;
  }
}
