/* Project scoping workbench. All changes are screen-only. */
@media screen {
  .nx-site .nx-quote.kp-project {
    --kp-line: #5b6e655f;
    --kp-ink: #e7eee9;
    --kp-copy: #bdcbc3;
    --kp-mint: #badbca;
    --kp-gold: #d2c29e;
    --kp-paper-ink: #243c31;
    --kp-paper-copy: #405647;
  }
  .nx-site .kp-project .kp-lab {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 0;
    align-items: start;
    border: 1px solid #5c71665f;
    border-radius: 6px;
    background: #18231f;
    box-shadow: 0 22px 55px #0003, inset 0 1px #e2e9df0c;
    overflow: visible;
  }
  .nx-site .kp-project .kp-lab > .quote-sidebar {
    grid-column: 1 / -1;
    grid-row: 1;
    display: grid;
    grid-template-columns: 145px minmax(0, 1fr);
    grid-template-rows: auto auto;
    gap: 4px 25px;
    align-items: center;
    padding: 16px 26px 14px;
    border: 0;
    border-bottom: 1px solid var(--kp-line);
    border-radius: 5px 5px 0 0;
    background: linear-gradient(130deg, #2c3731, #202b25 66%, #27312a);
  }
  .nx-site .kp-project .quote-brand { grid-column: 1; grid-row: 1; gap: 3px; }
  .nx-site .kp-project .quote-brand-link {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    color: #e7e7d9;
    font-size: 16px;
    letter-spacing: .08em;
  }
  .nx-site .kp-project .quote-brand small { color: #b9c7bc; font-size: 10px; line-height: 1.6; letter-spacing: .1em; }
  .nx-site .kp-project .quote-sidebar .kp-step-nav {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: stretch;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .nx-site .kp-project .quote-sidebar .kp-step-nav > li {
    display: block;
    min-width: 0;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 3px;
    background: none;
  }
  .nx-site .kp-project .kp-step-nav > li > b,
  .nx-site .kp-project .kp-step-nav > li::before,
  .nx-site .kp-project .kp-step-nav > li::after { display: none !important; }
  .nx-site .kp-project .kp-stage-button {
    display: grid;
    grid-template-columns: 23px minmax(0, 1fr);
    grid-template-rows: 1fr auto;
    align-items: start;
    gap: 10px;
    width: 100%;
    min-height: 106px;
    height: 100%;
    padding: 14px 12px;
    border: 1px solid #71827656;
    border-radius: 3px;
    background: #101b151a;
    color: #c6d2c8;
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: border-color .18s, background-color .18s;
  }
  .nx-site .kp-project .kp-stage-icon { width: 23px; height: 23px; margin-top: 1px; color: #abc6b5; }
  .nx-site .kp-project .kp-stage-copy { display: grid; gap: 5px; min-width: 0; }
  .nx-site .kp-project .kp-stage-copy > span { color: #e0e7dc; font-size: 15px; font-weight: 600; line-height: 1.5; }
  .nx-site .kp-project .kp-stage-copy > small { color: #b3c4b8; font-size: 12px; font-weight: 400; line-height: 1.5; }
  .nx-site .kp-project .kp-stage-state { grid-column: 2; color: #b7c5bb; font-size: 11px; line-height: 1.5; }
  .nx-site .kp-project .kp-step-nav > li.active .kp-stage-button {
    border-color: #bdae8a;
    background: linear-gradient(120deg, #454c3b, #354135);
    box-shadow: inset 0 2px #d6c7a4;
  }
  .nx-site .kp-project .kp-step-nav > li.active :is(.kp-stage-icon, .kp-stage-state) { color: #eee1c5; }
  .nx-site .kp-project .kp-step-nav > li.complete .kp-stage-button { border-color: #859a876b; }
  .nx-site .kp-project .kp-step-nav > li.complete .kp-stage-state { color: #d0e5d4; }
  .nx-site .kp-project .quote-sidebar-bottom {
    grid-column: 1;
    grid-row: 2;
    display: block;
    margin: 0;
    padding: 0;
  }
  .nx-site .kp-project .quote-sidebar-bottom > p { display: none; }
  .nx-site .kp-project .quote-utilities { justify-content: flex-start; gap: 8px; width: auto; padding: 0; border: 0; }
  .nx-site .kp-project .quote-utilities :is(a, button) { color: #cbd7cd; background: transparent; border-color: transparent; border-radius: 3px; }
  .nx-site .kp-project .quote-utilities a { text-decoration: underline; text-underline-offset: 4px; text-decoration-color: #9caa9670; }
  .nx-site .kp-project .quote-utilities button { border-color: #83967c65; }

  .nx-site .kp-project .kp-lab > .quote-form {
    grid-column: 1;
    grid-row: 2;
    padding: 35px 34px 32px;
    border-radius: 0 0 0 5px;
    background: linear-gradient(130deg, #1c2a25, #17231f 65%);
  }
  .nx-site .kp-project .quote-form .form-head { gap: 22px; margin: 0; padding-bottom: 25px; border-color: var(--kp-line); scroll-margin-top: 120px; }
  .nx-site .kp-project .quote-form .form-head h3 { margin-top: 0; color: var(--kp-ink); font-size: clamp(23px, 2vw, 27px); line-height: 1.4; }
  .nx-site .kp-project .quote-form .form-head p { margin-top: 11px; color: var(--kp-copy); font-size: 16px; line-height: 1.8; }
  .nx-site .kp-project .quote-form .quote-progress { flex-basis: 64px; }
  .nx-site .kp-project .quote-progress b { color: #cad8cb; font-size: 13px; }
  .nx-site .kp-project .quote-progress-bars { gap: 5px; }
  .nx-site .kp-project .quote-progress-bars i { height: 2px; background: #546859; }
  .nx-site .kp-project .quote-progress-bars i.is-complete { background: #d2c29e; }
  .nx-site .kp-project .quote-step { padding-top: 27px; }
  .nx-site .kp-project .quote-step :is(label > span, legend) { color: #dce6dd; font-size: 16px; font-weight: 500; line-height: 1.65; }
  .nx-site .kp-project .quote-step label > span em,
  .nx-site .kp-project .quote-step legend em { color: #c4c7b4; font-size: 12px; }
  .nx-site .kp-project .quote-step label > small { color: #b8c7bc; font-size: 13px; line-height: 1.7; }
  .nx-site .kp-project .quote-form :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]), select, textarea) {
    min-height: 52px;
    padding: 13px 14px;
    border: 1px solid #6d82756e;
    border-radius: 3px;
    background: #101d17;
    color: #e4eee6;
    font-size: 16px;
    line-height: 1.65;
    box-shadow: inset 0 2px 7px #0002, 0 1px #e1e8dd08;
    transition: border-color .18s, background-color .18s;
  }
  .nx-site .kp-project .quote-form select { padding-right: 30px; appearance: auto; background-image: none; }
  .nx-site .kp-project .quote-form option { color: #e4eee6; background: #15251c; }
  .nx-site .kp-project .quote-form textarea { min-height: 160px; }
  .nx-site .kp-project .quote-form :is(input, textarea)::placeholder { color: #a7baae; opacity: 1; }
  .nx-site .kp-project .quote-form :is(input, select, textarea):hover { border-color: #a9bda67d; }
  .nx-site .kp-project .quote-form :is(input, select, textarea):focus {
    border-color: #badbca;
    background-color: #20342a;
    outline: 2px solid #badbca;
    outline-offset: 3px;
    box-shadow: none;
  }
  .nx-site .kp-project .quote-form :is(input, select, textarea)[aria-invalid=true],
  .nx-site .kp-project .quote-form :is(input, select, textarea):user-invalid { border-color: #e3a494; }
  .nx-site .kp-project .quote-form .field-grid { gap: 20px; }
  .nx-site .kp-project .quote-form .field-grid.three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nx-site .kp-project .kp-field-count { display: block; margin: 7px 0 0; color: #afc1b5; font-size: 12px; font-variant-numeric: tabular-nums; line-height: 1.6; text-align: right; }
  .nx-site .kp-project .quote-form .form-error { margin-top: 22px; padding: 16px 18px; border: 1px solid #ad7769; border-radius: 3px; background: #36241e; color: #f3d7ca; font-size: 16px; }
  .nx-site .kp-project .quote-form .form-error :is(a, p, li) { color: inherit; }
  .nx-site .kp-project .quote-form .form-error a { text-decoration: underline; text-underline-offset: 4px; }
  .nx-site .kp-project .quote-form .nx-context-notice { margin: 0 0 24px; padding: 17px 20px; border: 1px solid #a8a17a; border-left: 3px solid #d2c29e; border-radius: 3px; background: #30352b; color: #e3e4cf; font-size: 15px; line-height: 1.8; }
  .nx-site .kp-project .quote-form .check-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .nx-site .kp-project .quote-form .check-grid label > span {
    position: relative;
    min-height: 56px;
    padding: 12px 12px 12px 44px;
    border-radius: 3px;
    border-color: #6d82756e;
    background: #25332b;
    color: #d4e0d5 !important;
    font-size: 15px;
    line-height: 1.6;
  }
  .nx-site .kp-project .quote-form .check-grid label > span::before {
    content: '';
    position: absolute;
    top: 17px;
    left: 14px;
    display: grid;
    place-items: center;
    width: 18px;
    height: 18px;
    border: 1px solid #90a68f;
    border-radius: 2px;
    background: #17251c;
    color: #203126;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
  }
  .nx-site .kp-project .quote-form :is(.check-grid, .readiness-list) input:checked + span {
    border-color: #c8bd9e;
    background: #3a4939;
    box-shadow: inset 2px 0 #d2c29e;
    color: #edf0e3 !important;
  }
  .nx-site .kp-project .quote-form .check-grid input:checked + span::before { content: '✓'; background: #d1dec2; border-color: #d1dec2; }
  .nx-site .kp-project .quote-form .readiness-list label > span { padding: 16px 16px 16px 49px; border-radius: 3px; background: #25332b; border-color: #6d82756e; }
  .nx-site .kp-project .quote-form .readiness-list span b { color: #dce6d9; font-size: 16px; }
  .nx-site .kp-project .quote-form .readiness-list span small { color: #bdcdbf; font-size: 14px; line-height: 1.7; }
  .nx-site .kp-project .quote-form .consent-field > span { border-radius: 3px; background: #25332b; border-color: #6d82756e; color: #d4e0d5 !important; font-size: 16px !important; line-height: 1.75; }
  .nx-site .kp-project .quote-form :is(.readiness-list, .consent-field) span::before { border-radius: 2px; background: #17251c; border-color: #90a68f; }
  .nx-site .kp-project .quote-form :is(.readiness-list, .consent-field) input:checked + span::before { background: #d1dec2; border-color: #d1dec2; color: #203126; }
  .nx-site .kp-project .quote-form :is(.check-grid, .readiness-list, .consent-field) input:focus-visible + span { outline: 2px solid #c7e8d3; outline-offset: 4px; }

  .nx-site .kp-project .kp-guidance { margin-top: 22px; border: 1px solid #7183696b; border-radius: 3px; background: #2d382b; }
  .nx-site .kp-project :is(.kp-guidance, .kp-diagnostics) > summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    min-height: 52px;
    padding: 13px 16px;
    color: #e1e4cc;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    cursor: pointer;
    list-style: none;
  }
  .nx-site .kp-project :is(.kp-guidance, .kp-diagnostics) > summary::-webkit-details-marker { display: none; }
  .nx-site .kp-project :is(.kp-guidance, .kp-diagnostics) > summary > span:last-child { flex: 0 0 auto; font-size: 19px; line-height: 1; }
  .nx-site .kp-project :is(.kp-guidance, .kp-diagnostics)[open] > summary { border-bottom: 1px solid #89977a4f; }
  .nx-site .kp-project .kp-guidance[open] > summary > span:last-child { transform: rotate(45deg); }
  .nx-site .kp-project .kp-guidance-body { padding: 19px 20px 20px; }
  .nx-site .kp-project .kp-guidance-body :is(p, li) { color: #d1ddc8; font-size: 16px; line-height: 1.8; }
  .nx-site .kp-project .kp-guidance-body p { margin: 0; }
  .nx-site .kp-project .kp-guidance-body ul { display: grid; gap: 9px; margin: 17px 0 21px; padding: 0 0 0 19px; list-style: disc; }
  .nx-site .kp-project .kp-guidance-body li { padding-left: 3px; }
  .nx-site .kp-project .kp-guidance-body li::marker { color: #bdc7a4; font-size: 12px; }
  .nx-site .kp-project .kp-guidance-body :is(small, .kp-example-label) { color: #d8cda9; font-size: 11px; font-weight: 500; letter-spacing: .06em; }
  .nx-site .kp-project .kp-guidance-body blockquote { margin: 9px 0 0; padding: 0 0 0 15px; border: 0; border-left: 2px solid #aa9f79; color: #d3dec8; font-size: 16px; font-style: normal; line-height: 1.8; }
  .nx-site .kp-project .form-actions { gap: 17px; padding-top: 25px; border-color: var(--kp-line); }
  .nx-site .kp-project .form-actions > div > span { color: #b5c6b8; font-size: 12px; }
  .nx-site .kp-project .form-actions :is(.button, .text-button) { min-height: 48px; padding: 13px 20px; border-radius: 3px; font-size: 15px; font-weight: 600; transform: none; }
  .nx-site .kp-project .form-actions .button-primary { border-color: #d6ccb1; background: linear-gradient(120deg, #e3d7bb, #bed1ba); color: #25352a; box-shadow: inset 0 1px #fff5; }
  .nx-site .kp-project .form-actions .button-primary:hover:not(:disabled) { background: linear-gradient(120deg, #ede3cc, #d2e1c9); border-color: #e7dec6; color: #1d3022; box-shadow: inset 0 1px #fff5; }
  .nx-site .kp-project .form-actions .text-button { padding-inline: 0 10px; color: #ccdacd; }

  .nx-site .kp-project .kp-brief {
    grid-column: 2;
    grid-row: 2;
    position: static;
    min-width: 0;
    padding: 28px 22px 30px;
    border-left: 1px solid var(--kp-line);
    background: linear-gradient(160deg, #263129, #1a251f 65%);
    border-radius: 0 0 5px 0;
  }
  .nx-site .kp-project .kp-brief-content { min-width: 0; }
  .nx-site .kp-project .kp-sheet {
    position: relative;
    padding: 24px 22px 20px;
    border: 1px solid #a2af9980;
    border-radius: 2px;
    background: linear-gradient(125deg, #e6e9dc, #d9dfd0 72%, #dfe5d7);
    color: var(--kp-paper-ink);
    box-shadow: 3px 4px #9dada229, 0 14px 30px #07120b36, inset 0 1px #fff7;
    overflow-wrap: anywhere;
  }
  .nx-site .kp-project .kp-sheet ::selection { color: #162a1a; background: #acc29e; }
  .nx-site .kp-project .kp-sheet-head { padding-bottom: 20px; border-bottom: 1px solid #73846955; }
  .nx-site .kp-project .kp-sheet-head > span { color: #4a624c; font-size: 10px; font-weight: 600; line-height: 1.8; letter-spacing: .08em; }
  .nx-site .kp-project .kp-sheet .kp-sheet-head h3 { margin: 12px 0 9px; color: #243c31; font-size: 24px; font-weight: 600; line-height: 1.35; letter-spacing: -.03em; }
  .nx-site .kp-project .kp-sheet .kp-sheet-head p { margin: 0; color: var(--kp-paper-copy); font-size: 16px; line-height: 1.75; }
  .nx-site .kp-project .kp-sheet h4[data-kp-project-name] { margin: 23px 0 3px; color: #2c4234; font-size: 18px; font-weight: 600; line-height: 1.55; letter-spacing: -.015em; }
  .nx-site .kp-project .kp-brief-entry { margin: 0; padding: 18px 0; border-bottom: 1px solid #73846945; }
  .nx-site .kp-project .kp-brief-entry > header { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
  .nx-site .kp-project .kp-brief-entry > header h4 { display: flex; align-items: center; gap: 8px; min-width: 0; margin: 0; color: #2d4533; font-size: 14px; font-weight: 650; line-height: 1.6; letter-spacing: 0; }
  .nx-site .kp-project .kp-brief-entry > header h4 svg { flex: 0 0 18px; width: 18px; height: 18px; color: #4d654c; }
  .nx-site .kp-project .kp-brief-entry button[data-kp-edit] { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 2px 8px 8px; border: 0; border-radius: 2px; background: none; color: #3a543e; font-size: 12px; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: #607a5666; cursor: pointer; }
  .nx-site .kp-project .kp-brief-entry p[data-kp-summary] { margin: 7px 0 8px; color: #354d3c; font-size: 16px; line-height: 1.75; white-space: pre-line; }
  .nx-site .kp-project .kp-brief-entry small[data-kp-state] { display: block; color: #4b614b; font-size: 11px; font-weight: 500; line-height: 1.6; }
  .nx-site .kp-project .kp-sheet .kp-sheet-footer { margin: 17px 0 0; padding: 0; color: #4c614a; font-size: 12px; line-height: 1.75; }
  .nx-site .kp-project .kp-sheet .kp-sheet-footer p { margin: 0; color: inherit; font-size: inherit; line-height: inherit; }
  .nx-site .kp-project .kp-brief-actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; margin-top: 22px; }
  .nx-site .kp-project .kp-brief-actions button,
  .nx-site .kp-project .kp-brief-toggle { display: inline-flex; justify-content: space-between; align-items: center; gap: 12px; width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid #8a9a7b80; border-radius: 3px; background: #344230; color: #e0e6cf; font-size: 14px; font-weight: 500; line-height: 1.65; text-align: left; cursor: pointer; }
  .nx-site .kp-project .kp-brief-actions button[data-kp-return] { border-color: transparent; background: none; color: #cad9c7; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: #91a37b88; }
  .nx-site .kp-project :is(.kp-storage-note, .kp-export-status) { margin: 19px 0 0; color: #becdbc; font-size: 12px; line-height: 1.8; overflow-wrap: anywhere; }
  .nx-site .kp-project :is(.kp-storage-note, .kp-export-status):empty { display: none; }
  .nx-site .kp-project .kp-diagnostics { margin-top: 21px; border: 1px solid #7183696b; border-radius: 3px; background: #202e23; }
  .nx-site .kp-project .kp-diagnostics > summary { padding: 13px; font-size: 13px; color: #c9d8c3; }
  .nx-site .kp-project .kp-diagnostics > summary::after { content: '+'; flex: 0 0 auto; color: #d2c29e; font-size: 20px; line-height: 1; }
  .nx-site .kp-project .kp-diagnostics[open] > summary::after { content: '−'; }
  .nx-site .kp-project .kp-diagnostics :is(.live-estimate, .baseline-preview) { display: block; margin: 0; padding: 17px 14px; border: 0; border-radius: 0; background: none; }
  .nx-site .kp-project .kp-diagnostics .live-estimate { border-bottom: 1px solid #7183694a; }
  .nx-site .kp-project .kp-diagnostics :is(.live-estimate p, .baseline-preview p > span) { color: #c0cfba; font-size: 14px; line-height: 1.75; }
  .nx-site .kp-project .kp-diagnostics :is(.live-estimate > small, .baseline-preview > small) { color: #becdb7; font-size: 10px; letter-spacing: .06em; }
  .nx-site .kp-project .kp-diagnostics .live-estimate strong { display: block; color: #dbe5c9; font-size: 27px; }
  .nx-site .kp-project .kp-diagnostics .live-estimate strong i { color: #becdb7; }
  .nx-site .kp-project .kp-diagnostics .baseline-preview b { color: #d9e4cd; font-size: 16px; }
  .nx-site .kp-project :is(button, a, summary):focus-visible { outline: 2px solid #c7e8d3; outline-offset: 4px; }
  .nx-site .kp-project .kp-stage-button:focus-visible { outline-offset: -5px; }
  .nx-site .kp-project .kp-sheet :is(button, a):focus-visible { outline-color: #375d3f; outline-offset: 2px; }
  .nx-site .kp-project :is(.kp-sheet h3, .kp-sheet h4, .form-head h3) { scroll-margin-top: 120px; }
  .nx-site .kp-project .kp-sheet :is(h3, h4):focus { outline: 2px solid #375d3f; outline-offset: 5px; }

  @media (min-width: 1061px) {
    .nx-site .kp-project .kp-brief-toggle { display: none; }
    .nx-site .kp-project .kp-brief-content[hidden] { display: block !important; }
  }
  @media (max-width: 1060px) {
    .nx-site .kp-project .kp-lab { grid-template-columns: minmax(0, 1fr); }
    .nx-site .kp-project .kp-lab > .quote-sidebar { grid-column: 1; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto auto; gap: 14px 20px; padding: 20px 24px; }
    .nx-site .kp-project .quote-brand { grid-column: 1; grid-row: 1; display: flex; align-items: baseline; flex-direction: row; flex-wrap: wrap; gap: 4px 15px; }
    .nx-site .kp-project .quote-sidebar-bottom { grid-column: 2; grid-row: 1; }
    .nx-site .kp-project .quote-utilities { justify-content: flex-end; }
    .nx-site .kp-project .quote-sidebar .kp-step-nav { grid-column: 1 / -1; grid-row: 2; }
    .nx-site .kp-project .kp-brief { grid-column: 1; grid-row: 2; padding: 20px 25px; border: 0; border-bottom: 1px solid var(--kp-line); border-radius: 0; background: #253028; }
    .nx-site .kp-project .kp-brief-content { margin-top: 21px; }
    .nx-site .kp-project .kp-sheet { padding: 27px 30px; }
    .nx-site .kp-project .kp-brief-entries { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 30px; }
    .nx-site .kp-project .kp-brief-entry { padding-block: 19px; }
    .nx-site .kp-project .kp-brief-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .nx-site .kp-project .kp-lab > .quote-form { grid-column: 1; grid-row: 3; padding: 32px; border-radius: 0 0 5px 5px; }
    .nx-site .kp-project .quote-form .field-grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  }
  @media (max-width: 720px) {
    .nx-site .kp-project .kp-lab > .quote-sidebar { padding: 16px; gap: 15px; }
    .nx-site .kp-project .quote-brand { display: grid; gap: 0; }
    .nx-site .kp-project .quote-brand-link { font-size: 14px; }
    .nx-site .kp-project .quote-brand small { font-size: 9px; }
    .nx-site .kp-project .quote-utilities { gap: 5px; }
    .nx-site .kp-project .quote-utilities a { padding-inline: 5px; font-size: 12px; }
    .nx-site .kp-project .quote-sidebar .kp-step-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .nx-site .kp-project .kp-stage-button { min-height: 95px; padding: 13px 12px; gap: 5px 9px; grid-template-columns: 22px minmax(0, 1fr); }
    .nx-site .kp-project .kp-stage-copy > span { font-size: 14px; }
    .nx-site .kp-project .kp-stage-copy > small { font-size: 11px; }
    .nx-site .kp-project .kp-stage-state { font-size: 10px; }
    .nx-site .kp-project .kp-brief { padding: 17px; }
    .nx-site .kp-project .kp-brief-toggle { min-height: 52px; font-size: 14px; }
    .nx-site .kp-project .kp-sheet { padding: 25px 22px; }
    .nx-site .kp-project .kp-brief-entries { display: block; }
    .nx-site .kp-project .kp-brief-entry { padding-block: 16px; }
    .nx-site .kp-project .kp-brief-actions { grid-template-columns: minmax(0, 1fr); }
    .nx-site .kp-project .kp-lab > .quote-form { padding: 28px 21px; }
    .nx-site .kp-project .quote-form .form-head { gap: 18px; padding-bottom: 22px; }
    .nx-site .kp-project .quote-form .form-head h3 { font-size: 24px; }
    .nx-site .kp-project .quote-form .quote-progress { flex-basis: 100%; }
    .nx-site .kp-project .quote-progress-bars { width: 100px; }
    .nx-site .kp-project .quote-form .field-grid.two,
    .nx-site .kp-project .quote-form .field-grid.three { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .nx-site .kp-project .kp-guidance { margin-top: 20px; }
    .nx-site .kp-project .kp-guidance-body { padding: 18px 16px 20px; }
    .nx-site .kp-project .form-actions { gap: 12px; }
    .nx-site .kp-project .form-actions > .text-button { align-self: stretch; justify-content: flex-start; }
  }
  @media (max-width: 480px) {
    .nx-site .kp-project .kp-lab > .quote-sidebar { padding: 14px 12px; gap: 13px 8px; }
    .nx-site .kp-project .quote-brand-link { font-size: 12px; letter-spacing: .06em; }
    .nx-site .kp-project .quote-brand small { font-size: 8px; letter-spacing: .05em; }
    .nx-site .kp-project .quote-utilities a { font-size: 11px; }
    .nx-site .kp-project .quote-utilities button { min-width: 44px; }
    .nx-site .kp-project .quote-sidebar .kp-step-nav { gap: 7px; }
    .nx-site .kp-project .kp-stage-button { grid-template-columns: 18px minmax(0, 1fr); padding: 12px 9px; gap: 6px; }
    .nx-site .kp-project .kp-stage-icon { width: 18px; height: 18px; }
    .nx-site .kp-project .kp-stage-copy > span { font-size: 13px; }
    .nx-site .kp-project .kp-stage-copy > small { font-size: 10px; line-height: 1.6; }
    .nx-site .kp-project .kp-brief { padding: 15px 12px; }
    .nx-site .kp-project .kp-brief-toggle { padding-inline: 12px; }
    .nx-site .kp-project .kp-sheet { padding: 23px 17px; }
    .nx-site .kp-project .kp-sheet .kp-sheet-head h3 { font-size: 23px; }
    .nx-site .kp-project .kp-brief-entry > header h4 { font-size: 13px; }
    .nx-site .kp-project .kp-brief-entry button[data-kp-edit] { font-size: 11px; }
    .nx-site .kp-project .kp-lab > .quote-form { padding: 26px 16px; }
    .nx-site .kp-project .quote-form .form-head h3 { font-size: 23px; }
    .nx-site .kp-project .quote-form .check-grid { grid-template-columns: minmax(0, 1fr); }
    .nx-site .kp-project :is(.kp-guidance, .kp-diagnostics) > summary { padding-inline: 12px; font-size: 14px; }
    .nx-site .kp-project .kp-guidance-body { padding-inline: 13px; }
    .nx-site .kp-project .kp-guidance-body blockquote { padding-left: 12px; }
  }
  @media (hover: hover) and (pointer: fine) {
    .nx-site .kp-project .kp-stage-button:hover { background-color: #475140; border-color: #b1b99b; }
    .nx-site .kp-project :is(.kp-guidance, .kp-diagnostics) > summary:hover { background: #dbe0bd08; }
    .nx-site .kp-project .kp-brief-entry button[data-kp-edit]:hover { color: #1c3824; text-decoration-color: #3a543e; }
    .nx-site .kp-project .kp-brief-actions button:hover { background: #41523c; border-color: #acb992; }
    .nx-site .kp-project .kp-brief-actions button[data-kp-return]:hover { background: #cfdfbd08; border-color: transparent; }
  }
  @media (prefers-reduced-motion: reduce) {
    .nx-site .kp-project *, .nx-site .kp-project *::before, .nx-site .kp-project *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  }
}
