/* MindShot v2.15.3 — contact surfaces keep their own light tokens in every theme. */
body.v24-contact :is(#cotizador,#contacto-rapido){
  --contact-paper:#f1efe7;
  --contact-ink:#07101f;
  --contact-muted:#40536b;
  --contact-subtle:#4a596b;
  --contact-border:#6e7988;
  --contact-accent:#2457df;
  --contact-error:#9e1b1b;
  --bg:#ffffff;
  --bg-2:#f5f4ef;
  --surface:#ffffff;
  --surface-2:#f5f4ef;
  --surface-translucent:#ffffff;
  --text:var(--contact-ink);
  --muted:var(--contact-muted);
  --subtle:var(--contact-subtle);
  --border:var(--contact-border);
  --border-strong:var(--contact-muted);
  --v24-line:var(--contact-border);
  --soft:#e6edff;
  --ms-blue-rgb:36 87 223;
  --ms-cyan-rgb:36 87 223;
  color-scheme:light;
  color:var(--contact-ink);
  background:var(--contact-paper);
  scroll-margin-top:110px;
  overflow-wrap:anywhere;
}
body.v24-contact :is(#cotizador,#contacto-rapido) ::selection{color:#ffffff;background:var(--contact-accent)}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(h2,h3,h4,legend){color:var(--contact-ink)}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(p,.v24-kicker,.field-help,.contact-character-count,.form-notice span){color:var(--contact-muted)}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(.field-help,.contact-character-count,.form-notice span){font-size:.9375rem;line-height:1.6}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(a:not(.button),button.v24-link){
  color:var(--contact-accent);text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px;
  max-width:100%;white-space:normal;overflow-wrap:anywhere;
}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(a:not(.button),button.v24-link):hover{color:#1945b7;text-decoration-thickness:2px}
body.v24-contact :is(#cotizador,#contacto-rapido) button.v24-link{border:0;border-bottom:1px solid currentColor;background:transparent;font-size:1rem;cursor:pointer;padding:10px 0;min-height:44px}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(.form-grid,.dynamic-fields,.quote-step,.quote-step-head,.quote-step-head>div,.quote-review,.quote-result,.quick-contact-form,label,fieldset){min-width:0;max-width:100%}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(.quote-builder,.quick-contact-form){scroll-margin-top:110px}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(.quote-step-head h3,[tabindex]){scroll-margin-top:110px}
body.v24-contact :is(#cotizador,#contacto-rapido) .form-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
body.v24-contact :is(#cotizador,#contacto-rapido) label:not(.choice-card):not(.consent-row){display:grid;gap:8px;color:var(--contact-ink);font-size:1rem;font-weight:700;line-height:1.5}
body.v24-contact :is(#cotizador,#contacto-rapido) label em{color:var(--contact-subtle);font-size:inherit;font-weight:400;font-style:normal}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){
  width:100%;min-width:0;max-width:100%;min-height:48px;
  padding:12px 13px;border:1px solid var(--contact-border);border-radius:11px;
  color:var(--contact-ink);background:#ffffff;font:inherit;font-size:1rem;line-height:1.5;
  color-scheme:light;caret-color:var(--contact-ink);
}
body.v24-contact :is(#cotizador,#contacto-rapido) textarea{resize:vertical;min-height:160px;white-space:pre-wrap;overflow-wrap:anywhere}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(input,textarea)::placeholder{color:#536172;opacity:1}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(option,optgroup){color:var(--contact-ink);background:#ffffff}
body.v24-contact :is(#cotizador,#contacto-rapido) input:-webkit-autofill{-webkit-text-fill-color:var(--contact-ink);box-shadow:0 0 0 1000px #ffffff inset;caret-color:var(--contact-ink)}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(input,select,textarea):focus{border-color:var(--contact-accent)}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(input,select,textarea,button,a,summary,[tabindex]):focus-visible{outline:3px solid var(--contact-accent);outline-offset:3px}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(input,select,textarea)[aria-invalid=true]{border-color:var(--contact-error);box-shadow:0 0 0 1px var(--contact-error)}
body.v24-contact :is(#cotizador,#contacto-rapido) .field-error{margin:0;padding:10px 12px;border:1px solid var(--contact-error);border-radius:10px;background:#fff0ed;color:var(--contact-error);font-size:1rem;line-height:1.5;font-weight:500}
body.v24-contact :is(#cotizador,#contacto-rapido) .form-notice{border-color:var(--contact-border);background:#f5f4ef;color:var(--contact-ink)}
body.v24-contact :is(#cotizador,#contacto-rapido) .form-notice b{color:var(--contact-ink);font-size:1rem;line-height:1.5}
body.v24-contact :is(#cotizador,#contacto-rapido) .quote-progress>div:first-child{color:var(--contact-muted);font-size:.9375rem;gap:12px}
body.v24-contact :is(#cotizador,#contacto-rapido) .quote-progress-track{background:#d4d8df;outline:1px solid var(--contact-border);height:6px}
body.v24-contact :is(#cotizador,#contacto-rapido) .quote-progress-track i{background:linear-gradient(90deg,#2457df,#5b21b6,#ab0076)}
body.v24-contact :is(#cotizador,#contacto-rapido) .quote-step-head>span{color:var(--contact-accent);background:#e6edff;border-color:var(--contact-accent);font-size:1rem}
body.v24-contact :is(#cotizador,#contacto-rapido) .quote-step-head small{color:var(--contact-muted);font-size:.9375rem;line-height:1.4}
body.v24-contact :is(#cotizador,#contacto-rapido) .quote-step-head h3{line-height:1.18}
body.v24-contact :is(#cotizador,#contacto-rapido) .choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
body.v24-contact :is(#cotizador,#contacto-rapido) .choice-card{color:var(--contact-ink);background:#ffffff;border-color:var(--contact-border)}
body.v24-contact :is(#cotizador,#contacto-rapido) .choice-card span{color:var(--contact-ink);font-size:1rem;line-height:1.4}
body.v24-contact :is(#cotizador,#contacto-rapido) .choice-card small{color:var(--contact-subtle);font-size:.9375rem;line-height:1.45}
body.v24-contact :is(#cotizador,#contacto-rapido) .choice-card:hover{border-color:var(--contact-accent)}
body.v24-contact :is(#cotizador,#contacto-rapido) .choice-card:has(input:checked){background:#e6edff;border-color:var(--contact-accent);box-shadow:inset 3px 0 var(--contact-accent)}
body.v24-contact :is(#cotizador,#contacto-rapido) .choice-card:has(input:focus-visible){outline:3px solid var(--contact-accent);outline-offset:3px}
body.v24-contact :is(#cotizador,#contacto-rapido) .choice-card input[type=radio]{width:1px;height:1px;padding:0;margin:0;border:0;inset:0 auto auto 0}
body.v24-contact :is(#cotizador,#contacto-rapido) .consent-row{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;color:var(--contact-muted);font-size:1rem;line-height:1.6;font-weight:400}
body.v24-contact :is(#cotizador,#contacto-rapido) .consent-row>.field-error{grid-column:2/-1}
body.v24-contact :is(#cotizador,#contacto-rapido) .consent-row input[type=checkbox]{width:20px;height:20px;min-height:0;padding:0;margin:3px 0 0;accent-color:var(--contact-accent);color-scheme:light;cursor:pointer}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(.quote-review,.quote-result){color:var(--contact-ink);background:#f5f4ef;border-color:var(--contact-border)}
body.v24-contact :is(#cotizador,#contacto-rapido) .quote-review strong{color:var(--contact-ink);font-size:1rem;line-height:1.5}
body.v24-contact :is(#cotizador,#contacto-rapido) .quote-review p{color:var(--contact-muted);font-size:1rem;line-height:1.6;white-space:pre-wrap}
body.v24-contact :is(#cotizador,#contacto-rapido) .quote-result pre{color:var(--contact-ink);background:#ffffff;border-color:var(--contact-border);font-size:1rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;tab-size:2}
body.v24-contact :is(#cotizador,#contacto-rapido) .quote-result .demo-badge{background:#e6edff;color:var(--contact-accent);border-color:var(--contact-accent);font-size:.875rem;max-width:100%;white-space:normal}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(.quote-actions,.contact-send-actions){display:flex;flex-wrap:wrap;gap:12px;align-items:center}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(.quote-actions,.contact-send-actions,.quote-result>div)>*{min-width:0;max-width:100%}
body.v24-contact :is(#cotizador,#contacto-rapido) .button{font-size:1rem;min-height:48px;height:auto;padding:12px 18px;line-height:1.4;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}
body.v24-contact :is(#cotizador,#contacto-rapido) .button-primary{color:#ffffff;background:linear-gradient(135deg,#2457df,#5b21b6);border-color:#2457df;box-shadow:0 10px 24px rgba(36,87,223,.16)}
body.v24-contact :is(#cotizador,#contacto-rapido) .button-primary:hover{background:linear-gradient(135deg,#1945b7,#491b92);border-color:#1945b7}
body.v24-contact :is(#cotizador,#contacto-rapido) .button-secondary{color:var(--contact-ink);background:#ffffff;border-color:var(--contact-border);box-shadow:none}
body.v24-contact :is(#cotizador,#contacto-rapido) .button-secondary:hover{color:var(--contact-ink);background:#e6edff;border-color:var(--contact-accent)}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(input,select,textarea,button):disabled,
body.v24-contact :is(#cotizador,#contacto-rapido) .button:disabled,
body.v24-contact :is(#cotizador,#contacto-rapido) .button[aria-disabled=true]{color:var(--contact-subtle);-webkit-text-fill-color:var(--contact-subtle);background:#e5e3dc;border-color:var(--contact-border);opacity:1;box-shadow:none;transform:none;cursor:not-allowed}
body.v24-contact :is(#cotizador,#contacto-rapido) .contact-send-status{padding:14px 16px;margin:0;border:1px solid var(--contact-accent);border-radius:10px;color:var(--contact-muted);background:#e6edff;font-size:1rem;line-height:1.6}
body.v24-contact :is(#cotizador,#contacto-rapido) .contact-send-status:is([data-state=success],.is-success){color:#226039;background:#eaf5eb;border-color:#226039}
body.v24-contact :is(#cotizador,#contacto-rapido) .contact-send-status:is([data-state=error],.is-error){color:var(--contact-error);background:#fff0ed;border-color:var(--contact-error)}
body.v24-contact :is(#cotizador,#contacto-rapido) .contact-character-count{font-weight:400;text-align:right}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(.contact-alternative,.contact-details summary span){font-size:1rem;line-height:1.6;color:var(--contact-muted)}
body.v24-contact :is(#cotizador,#contacto-rapido) .contact-copy-text{flex-basis:100%;width:100%}

/* The quick form follows the existing editorial contact grid. */
body.v24-contact #contacto-rapido .quick-contact-layout{display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr);gap:46px;align-items:start}
body.v24-contact #contacto-rapido .quick-contact-layout>*{min-width:0}
body.v24-contact #contacto-rapido .quick-contact-intro{position:sticky;top:110px}
body.v24-contact :is(#cotizador,#contacto-rapido) :is(.quick-contact-intro,.v24-contact-intro) h2{font-size:clamp(2rem,3vw,3.1rem);line-height:1.05;letter-spacing:-.055em;margin:8px 0 18px}
body.v24-contact #contacto-rapido .quick-contact-intro p{line-height:1.7}
body.v24-contact #contacto-rapido .quick-contact-form{display:grid;gap:20px;padding:28px;border:1px solid var(--contact-border);background:transparent}
body.v24-contact #contacto-rapido .quick-contact-form>p{margin:0}
body.v24-contact #contacto-rapido .contact-details{border-top:1px solid var(--contact-border);border-bottom:1px solid var(--contact-border);padding:0}
body.v24-contact #contacto-rapido .contact-details summary{padding:14px 0;min-height:48px;color:var(--contact-ink);font-size:1rem;line-height:1.5;font-weight:700;cursor:pointer}
body.v24-contact #contacto-rapido .contact-details summary::marker{color:var(--contact-accent)}
body.v24-contact #contacto-rapido .contact-details summary span{font-weight:400}
body.v24-contact #contacto-rapido .contact-details .dynamic-fields{padding:6px 0 20px;gap:18px}
body.v24-contact #cotizador{border-top:1px solid var(--contact-border)}

@media(max-width:1000px){
  body.v24-contact #contacto-rapido .quick-contact-layout{grid-template-columns:minmax(0,1fr);gap:30px}
  body.v24-contact #contacto-rapido .quick-contact-intro{position:static}
}
@media(max-width:700px){
  body.v24-contact :is(#cotizador,#contacto-rapido) :is(.form-grid.two-col,.choice-grid){grid-template-columns:minmax(0,1fr)}
  body.v24-contact #cotizador .quote-builder{padding:18px!important}
  body.v24-contact #contacto-rapido .quick-contact-form{padding:18px}
  body.v24-contact :is(#cotizador,#contacto-rapido) :is(.field-help,.contact-character-count,.form-notice span,.quote-progress>div:first-child,.quote-step-head small,.choice-card small,.quote-result .demo-badge){font-size:1rem}
  body.v24-contact :is(#cotizador,#contacto-rapido) :is(.quote-actions,.contact-send-actions){align-items:stretch}
  body.v24-contact :is(#cotizador,#contacto-rapido) :is(.quote-actions,.contact-send-actions) .button{flex:1 1 100%;width:100%;margin:0}
  body.v24-contact :is(#cotizador,#contacto-rapido) .quote-result>div{gap:12px}
  body.v24-contact :is(#cotizador,#contacto-rapido) .quote-result>div>.button{width:100%;margin-top:0}
  body.v24-contact :is(#cotizador,#contacto-rapido) .contact-send-actions>.field-help{flex-basis:100%}
}
@media(prefers-reduced-motion:reduce){
  body.v24-contact :is(#cotizador,#contacto-rapido) :is(.button,.choice-card,.quote-progress-track i){transition:none;transform:none}
}
