.quote-section {
  overflow: hidden;
  background: linear-gradient(105deg,rgba(5,13,19,.99),rgba(8,20,29,.88)),var(--vmk-media-background,none) var(--vmk-object-position,50% 50%)/cover;
  color: var(--vmk-white);
}

.quote-layout { display:grid; grid-template-columns:minmax(0,.58fr) minmax(540px,1fr); align-items:start; gap:clamp(46px,7vw,96px); }
.quote-copy { position:sticky; top:120px; }
.quote-copy h2 { max-width:540px; }
.quote-copy > p:not(.eyebrow) { max-width:460px; color:#b8c4cb; font-size:1.03rem; }
.verified-contact { display:grid; gap:0; margin:32px 0 0; padding:0; border-top:1px solid rgba(255,255,255,.13); list-style:none; }
.verified-contact li { display:flex; min-height:54px; align-items:center; gap:13px; border-bottom:1px solid rgba(255,255,255,.13); color:#dce5e9; font-size:.82rem; font-weight:700; }
.verified-contact .vmk-icon { color:var(--vmk-green); }

.quote-form-panel { position:relative; padding:clamp(28px,4vw,48px); border:1px solid rgba(255,255,255,.14); border-top:3px solid var(--vmk-green); border-radius:0 0 4px 4px; background:rgba(11,27,38,.96); box-shadow:none; }
.quote-form-panel::before { position:absolute; top:0; right:0; width:64px; height:64px; border-right:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.08); content:""; }
.vmk24-form { display:grid; gap:28px; }
.form-group { min-width:0; margin:0; padding:0 0 28px; border:0; border-bottom:1px solid rgba(255,255,255,.13); }
.form-group:last-of-type { padding-bottom:0; border-bottom:0; }
.form-group legend { display:flex; width:100%; align-items:center; gap:12px; margin:0 0 20px; padding:0; color:#f0f5f7; font-family:var(--vmk-display); font-size:.75rem; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.form-group legend::after { height:1px; flex:1; background:rgba(255,255,255,.13); content:""; }
.form-group legend span { color:var(--vmk-green); font-variant-numeric:tabular-nums; }
.form-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 18px; }
.form-row-wide,.form-actions,.form-status { grid-column:1/-1; }
.vmk24-form label { display:block; margin-bottom:8px; color:#dfe7eb; font-size:.69rem; font-weight:800; letter-spacing:.1em; line-height:1.35; text-transform:uppercase; }
.required { margin-left:4px; color:var(--vmk-green); }
.vmk24-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),.vmk24-form select,.vmk24-form textarea { width:100%; border:1px solid #40535e; border-radius:3px; background:#f8fafb; color:var(--vmk-ink); caret-color:var(--vmk-green-strong); transition:border-color 180ms ease,box-shadow 180ms ease,background-color 180ms ease; }
.vmk24-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),.vmk24-form select { min-height:56px; padding:13px 15px; }
.vmk24-form select { padding-right:44px; }
.vmk24-form textarea { min-height:160px; padding:14px 15px; resize:vertical; }
.vmk24-form input:focus,.vmk24-form select:focus,.vmk24-form textarea:focus,.vmk24-form input[type="file"]:focus-visible { border-color:var(--vmk-green); box-shadow:0 0 0 3px rgba(46,164,79,.2); outline:0; }
.vmk24-form input:hover:not(:disabled),.vmk24-form select:hover:not(:disabled),.vmk24-form textarea:hover:not(:disabled) { border-color:#6a7d87; }
.vmk24-form input:disabled,.vmk24-form select:disabled,.vmk24-form textarea:disabled { border-color:#829098; background:#cdd4d8; color:#65737b; cursor:not-allowed; opacity:.72; }
.vmk24-form input[type="checkbox"],.vmk24-form input[type="radio"] { width:20px; height:20px; margin:0; border:1px solid #81919a; accent-color:var(--vmk-green); }
.vmk24-form input[type="file"] { width:100%; min-height:54px; padding:9px; border:1px dashed #61737d; border-radius:3px; color:#dfe7eb; }
.form-choice { display:flex; min-height:44px; align-items:center; gap:10px; }
.form-choice label { margin:0; text-transform:none; }
.form-row.has-error input,.form-row.has-error select,.form-row.has-error textarea,.vmk24-form [aria-invalid="true"] { border-color:#d75b5b; box-shadow:0 0 0 3px rgba(215,91,91,.14); }
.form-row.has-error .field-message { color:#ffaaaa; }
.form-row.is-success input,.form-row.is-success select,.form-row.is-success textarea { border-color:var(--vmk-green); }
.field-message { display:block; margin-top:7px; color:#b9c6cc; font-size:.72rem; }
.form-actions { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:2px; }
/* Preserve the contact controller's completed state despite .button display rules. */
[data-vmk24-core-contact] button[hidden] { display:none; }
.form-note { max-width:300px; margin:0; color:#91a3ad; font-size:.72rem; line-height:1.5; }
.form-status { min-height:0; margin:-8px 0 0; padding:0; border-left:3px solid transparent; color:#d4dee3; font-size:.8rem; }
.form-status:not(:empty) { min-height:48px; padding:13px 15px; border-left-color:#91a3ad; background:rgba(255,255,255,.06); }
.form-status.is-notice,.form-status.is-success { border-left-color:var(--vmk-green); }
.form-status.is-success { background:rgba(46,164,79,.1); }
.form-status.is-error { border-left-color:#d75b5b; background:rgba(215,91,91,.1); color:#ffd6d6; }
.form-disabled-notice { padding:28px; border-left:3px solid var(--vmk-green); background:rgba(255,255,255,.07); color:#fff; }

/* Contact is a light, product-like workspace rather than a repeated promo card. */
.contact-workspace { border-top:1px solid var(--vmk-line); background:#eef1ef; }
.contact-workspace__grid { display:grid; grid-template-columns:minmax(320px,2fr) minmax(0,3fr); align-items:stretch; border:1px solid #cad3cf; border-top:3px solid var(--vmk-green); background:#fff; }
.contact-rail { display:flex; min-width:0; flex-direction:column; padding:clamp(34px,4vw,54px); border-right:1px solid var(--vmk-line); background:var(--vmk-navy); color:#fff; }
.contact-rail__intro { max-width:430px; }
.contact-rail__intro h2 { font-size:clamp(2.2rem,3.8vw,3.8rem); }
.contact-rail__intro > p:not(.eyebrow) { color:#b9c6cc; }
.contact-rail__details dt span { color:#84959f; font-size:.66rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.contact-rail__details { margin:32px 0 0; border-top:1px solid var(--vmk-line-dark); }
.contact-rail__details > div { display:grid; grid-template-columns:minmax(110px,.75fr) minmax(0,1.25fr); gap:20px; margin-inline:-10px; padding:18px 10px; border-bottom:1px solid var(--vmk-line-dark); transition:background-color var(--vmk-motion-standard) ease; }
.contact-rail__details > div:has(a):hover,.contact-rail__details > div:focus-within { background:rgba(3,152,22,.08); }
.contact-rail__details dt { display:flex; align-items:center; gap:9px; }
.contact-rail__details dt .vmk-icon { color:#dbe4e8; transition:color var(--vmk-motion-standard) ease; }
.contact-rail__details > div:has(a):hover dt .vmk-icon,.contact-rail__details > div:focus-within dt .vmk-icon { color:var(--vmk-green); }
.contact-rail__details dd { min-width:0; margin:0; color:#e8eef0; font-size:.86rem; font-weight:700; overflow-wrap:anywhere; }
.contact-rail__details a { transition:color 180ms ease; }
.contact-rail__details a:hover,.contact-rail__details a:focus-visible { color:var(--vmk-green); }
.contact-form-workspace { min-width:0; padding:clamp(34px,5vw,64px); background:#fff; }
.contact-form-workspace__header { max-width:690px; margin-bottom:36px; padding-bottom:30px; border-bottom:1px solid var(--vmk-line); }
.contact-form-workspace__header h2 { margin-bottom:15px; font-size:clamp(2rem,3.2vw,3.2rem); }
.contact-form-workspace__header > p:not(.eyebrow) { max-width:620px; margin:0; color:var(--vmk-muted); }
.contact-form-workspace .quote-form-panel { padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.contact-form-workspace .quote-form-panel::before { display:none; }
.contact-form-workspace .form-group { padding:0; border:0; }
.contact-form-workspace .form-group legend { margin-bottom:20px; color:var(--vmk-ink); }
.contact-form-workspace .form-group legend::after { background:var(--vmk-line); }
.contact-form-workspace .vmk24-form label { color:#465660; }
.contact-form-workspace .vmk24-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),.contact-form-workspace .vmk24-form select,.contact-form-workspace .vmk24-form textarea { border-color:#bdc9ce; background:#f7f9f8; }
.contact-form-workspace .form-note { color:var(--vmk-muted); }
.contact-form-workspace .form-status { color:var(--vmk-ink); }
.contact-form-workspace .form-status:not(:empty) { background:#eef3f0; }
.contact-form-workspace .form-disabled-notice { background:#eef3f0; color:var(--vmk-ink); }

@media (max-width:999px) {
  .quote-layout,.contact-workspace__grid { grid-template-columns:1fr; }
  .quote-copy { position:static; }
  .contact-rail { border-right:0; border-bottom:1px solid rgba(255,255,255,.14); }
  .contact-rail__details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .contact-rail__details > div { grid-template-columns:1fr; gap:8px; }
}

@media (max-width:767px) {
  .form-fields,.contact-rail__details { grid-template-columns:1fr; }
  .quote-form-panel { padding:28px 22px; }
  .form-actions { align-items:stretch; flex-direction:column; }
  .form-actions .button { width:100%; }
  .form-note { max-width:none; }
  .contact-workspace { padding-block:42px; }
  .contact-workspace__grid { width:100%; border-right:0; border-left:0; }
  .contact-rail,.contact-form-workspace { padding:30px 20px; }
  .contact-form-workspace__header { margin-bottom:28px; padding-bottom:24px; }
  .contact-rail__details > div { padding:15px 0; }
}
