/* Contuhijo Core VMON4.0 · protected Marga contact form presentation.
   Structural only: no values, validation, Vue bindings or submit logic. */
body.vmon-contact-route .vmon380-contact-form .vmon-shell{width:min(calc(100% - 32px),1240px)!important}
body.vmon-contact-route #contacto-form,
body.vmon-contact-route .vmon-marga--contact{width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important}
body.vmon-contact-route #contacto-form :where(.h-row,.row){width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important}
body.vmon-contact-route #contacto-form :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]),select,textarea){max-width:100%!important;box-sizing:border-box!important}
body.vmon-contact-route #contacto-form :where(img,iframe,table,.g-recaptcha){max-width:100%!important}
body.vmon-contact-route #contacto-form .g-recaptcha{transform-origin:left top}

@media(max-width:767px){
  body.vmon-contact-route .vmon380-contact-form{padding:26px 0 42px!important}
  body.vmon-contact-route .vmon380-contact-form .vmon-shell{width:min(calc(100% - 20px),1240px)!important}
  body.vmon-contact-route .vmon380-contact-form__surface{padding:0!important;border-radius:16px!important;overflow:hidden!important}
  body.vmon-contact-route #contacto-form{padding:20px 14px 24px!important;border-radius:16px!important}
  body.vmon-contact-route #contacto-form :where(.h-row,.row){display:block!important;margin:0!important}
  body.vmon-contact-route #contacto-form [class*="h-col-"],
  body.vmon-contact-route #contacto-form [class*="col-"]{display:block!important;float:none!important;width:100%!important;max-width:100%!important;min-width:0!important;flex:0 0 100%!important;padding:7px 0!important;margin:0!important}
  body.vmon-contact-route #contacto-form :where(.control-group,.form-group){width:100%!important;max-width:100%!important;min-width:0!important;margin:0 0 12px!important}
  body.vmon-contact-route #contacto-form :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]),select,textarea){display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;font-size:16px!important}
  body.vmon-contact-route #contacto-form :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]),select){min-height:48px!important}
  body.vmon-contact-route #contacto-form textarea{min-height:150px!important;resize:vertical!important}
  body.vmon-contact-route #contacto-form :where(label,.md-label){font-size:.82rem!important;line-height:1.3!important;letter-spacing:.035em!important}
  body.vmon-contact-route #contacto-form :where(h2,h3,h4,p,li){max-width:100%!important;overflow-wrap:anywhere!important}
  body.vmon-contact-route #contacto-form :where(p,li){font-size:.94rem!important;line-height:1.55!important}
  body.vmon-contact-route #contacto-form :where(.privacy-policy,.politica-privacidad,.rgpd,.lopd){width:100%!important;max-width:100%!important;font-size:.94rem!important;line-height:1.55!important}
  body.vmon-contact-route #contacto-form :where(input[type="checkbox"],input[type="radio"]){width:auto!important;min-width:0!important;min-height:0!important;flex:0 0 auto!important}
  body.vmon-contact-route #contacto-form :where(button,input[type="submit"],.md-btn){max-width:100%!important;min-height:46px!important}
}
@media(max-width:390px){
  body.vmon-contact-route #contacto-form .g-recaptcha{transform:scale(.86);margin-right:-44px;margin-bottom:-12px}
}

/* Vue/Marga template tokens are implementation detail, never customer copy. */
.vmon2026 .cth-marga-template-token{display:none!important}

/* Template tokens are implementation detail, never customer copy. */
body.vmon-contact-route .cth-marga-template-token{display:none!important}
