/* Form pages: HubSpot forms keep their ids and endpoints, our CSS owns the look. */
.nx-form-wrap,.nx-demo-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.nx-form-copy h2,.nx-demo-copy h2{margin-bottom:22px}
.nx-form-copy p,.nx-demo-copy p{max-width:460px}
.nx-demo-copy ul{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:14px;max-width:460px}
.nx-demo-copy li{position:relative;padding-left:26px;color:var(--ink)}
.nx-demo-copy li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;border-radius:50%;background:var(--accent)}
.nx-form-card{background:#fff;border:1px solid var(--line-2);border-radius:20px;padding:clamp(24px,3.4vw,44px);box-shadow:0 24px 60px -32px rgba(0,27,49,.28)}
.nx-form-card--dark{background:linear-gradient(160deg,#1e6fd9,#3a77d6 55%,#2f5fc0);border-color:rgba(255,255,255,.18);color:#fff;min-height:360px}
.nx-form-card--dark .hs-form-frame{min-height:360px}
.nx-form-note{margin:18px 0 0;font-size:13px;color:var(--muted)}
.nx-form-card--dark .nx-form-note{color:#ffffffa0}
.nx-form-card--dark a{color:#9fd3ff}
.nx-form-load{margin:0;color:var(--muted);font-size:15px}
/* HubSpot v2 form markup */
.nx-form-card .hs-form fieldset{max-width:none!important;border:0;margin:0;padding:0;min-width:0}
.nx-form-card .hs-form .hs-form-field{margin-bottom:20px}
.nx-form-card .hs-form fieldset.form-columns-2{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.nx-form-card .hs-form fieldset.form-columns-2 .hs-form-field{width:auto!important;float:none!important}
.nx-form-card .hs-form fieldset .hs-form-field .input{margin:0!important}
.nx-form-card .hs-form label{display:block;margin:0 0 8px;font:500 13px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink)}
.nx-form-card .hs-form label .hs-form-required{color:var(--accent);margin-left:3px}
.nx-form-card .hs-form .hs-input{width:100%!important;max-width:none;min-height:50px;background:#f2f5f8;border:1px solid #d5dbe3;border-radius:10px;padding:12px 14px;font:400 16px/1.4 inherit;color:var(--ink);box-sizing:border-box}
.nx-form-card .hs-form textarea.hs-input{min-height:140px;resize:vertical}
.nx-form-card .hs-form .hs-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px;background:#fff}
.nx-form-card .hs-form .hs-error-msgs{list-style:none;margin:6px 0 0;padding:0}
.nx-form-card .hs-form .hs-error-msg,.nx-form-card .hs-form .hs-main-font-element.hs-error-msg{color:#c8283a;font-size:13px}
.nx-form-card .hs-form .hs-input.invalid.error{border-color:#c8283a}
.nx-form-card .hs-form .hs-richtext,.nx-form-card .hs-form .legal-consent-container{font-size:13px;color:var(--muted)}
.nx-form-card .hs-form .hs-submit{margin-top:6px}
.nx-form-card .hs-form .hs-button{appearance:none;cursor:pointer;border:0;border-radius:999px;background:#1670d6;color:#fff;font:500 16px/1 inherit;min-height:50px;padding:0 28px;transition:background .2s}
.nx-form-card .hs-form .hs-button:hover{background:#1b79dd}
.nx-form-card .hs-form .hs-button:focus-visible{outline:2px solid #001b31;outline-offset:3px}
.nx-form-card .submitted-message{font-size:18px;line-height:1.5;color:var(--ink)}
@media (max-width:860px){
  .nx-form-wrap,.nx-demo-grid{grid-template-columns:1fr}
  .nx-form-card .hs-form fieldset.form-columns-2{grid-template-columns:1fr}
}
