/* AMG - Product category request picker. Scoped styles, works in both landing layouts. */
.category-picker-section { background: #f3f7fb; }
.category-picker-section .section-heading { margin-bottom: 31px; }
.picker-promo { display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:32px;align-items:stretch;position:relative;overflow:hidden;border-radius:24px;background:linear-gradient(110deg,#061a35 12%,#0e3058 100%);padding:40px 42px;color:white;box-shadow:0 17px 48px rgba(7,29,55,.12); }
.picker-promo:before {content:"";position:absolute;pointer-events:none;width:420px;height:420px;border-radius:50%;right:-95px;top:-170px;background:radial-gradient(circle,rgba(24,95,155,.24),transparent 69%);}
.picker-promo-main {position:relative;display:flex;flex-direction:column;align-items:flex-start;z-index:1}
.picker-promo-eyebrow {display:inline-flex;align-items:center;gap:8px;margin-bottom:17px;color:#ff7f8d;font-size:11px;letter-spacing:.14em;font-weight:900;}
.picker-promo-eyebrow .icon {width:18px;height:18px}
.picker-promo-main h3 {font-size:clamp(26px,3.1vw,39px);letter-spacing:-.045em;line-height:1.2;margin:0 0 14px;color:#fff}
.picker-promo-main p {font-size:14px;color:#c6d6e9;max-width:520px;line-height:1.8;margin:0 0 26px}
.picker-promo .btn {min-height:56px;white-space:normal;text-align:center;}
.picker-hint {display:inline-flex;align-items:center;gap:8px;margin-top:16px;color:#b5c9df;font-size:11px}
.picker-hint .icon {width:15px;height:15px}
.picker-promo-aside {position:relative;z-index:1;background:rgba(255,255,255,.98);padding:22px 23px;border-radius:18px;color:#142b49;align-self:center;box-shadow:0 17px 45px rgba(1,13,37,.18)}
.picker-preview-header {display:flex;align-items:center;gap:8px;font-size:12px;font-weight:900;color:#64748b;margin-bottom:12px}
.picker-preview-dot {width:8px;height:8px;border-radius:50%;background:#28a575;box-shadow:0 0 0 4px #e9f7ef}
.picker-preview-step {display:flex;align-items:center;gap:14px;padding:12px 2px;border-bottom:1px solid #e9eff6}
.picker-preview-step:last-child {border-bottom:none;padding-bottom:3px}
.picker-preview-step>span {display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:9px;background:#eff4f9;font-size:12px;font-weight:900;color:#c82034}
.picker-preview-step>div {flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.picker-preview-step strong {font-size:13px}
.picker-preview-step small {font-size:11px;color:#74849a}
.picker-preview-step .icon {width:18px;height:18px;color:#9db0c5}
.picker-quick-head {display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:31px 0 16px}
.picker-quick-head h3 {font-size:19px;margin:0}
.picker-quick-head span {font-size:12px;color:#657a92}
.picker-quick-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.picker-quick-card {display:flex;align-items:center;text-align:left;gap:11px;min-height:94px;padding:16px 12px;background:#fff;border:1px solid #e5ebf3;border-radius:15px;color:#182f4f;box-shadow:0 6px 22px rgba(14,40,75,.035);transition:transform .2s,border-color .2s,box-shadow .2s}
.picker-quick-card:hover {transform:translateY(-3px);border-color:#edb2b9;box-shadow:0 12px 28px rgba(14,40,75,.08)}
.picker-quick-icon {flex:none;width:44px;height:44px;border-radius:12px;background:#f1f5fa;display:grid;place-items:center;color:#174f81}
.picker-quick-icon .icon {width:25px;height:25px}
.picker-quick-icon.cat-brake {color:#b5283b;background:#fff2f3}
.picker-quick-icon.cat-filter {color:#ab661d;background:#fff5e9}
.picker-quick-icon.cat-more {color:#4c6680;background:#f0f3f6}
.picker-quick-card>span:nth-child(2) {flex:1;min-width:0}
.picker-quick-card strong {display:block;font-size:12px;line-height:1.35}
.picker-quick-card small {display:block;color:#7e8ea2;font-size:10px;line-height:1.5;margin-top:4px}
.picker-quick-arrow {width:16px;height:16px;color:#d7192f}
.lead-picker-shortcut {display:flex;align-items:center;gap:6px;border:0;background:none;padding:0;margin:-3px 0 14px;color:#b91e30;font-weight:800;font-size:10px;text-decoration:underline;text-underline-offset:3px;text-align:left}
.lead-picker-shortcut .icon {width:14px;height:14px}

/* Native dialog handles keyboard escape, focus trap, and backdrop. */
.parts-modal {position:fixed;inset:0;margin:auto;padding:0;border:none;background:#fff;color:#182e4e;border-radius:24px;box-shadow:0 34px 90px rgba(3,17,39,.35);width:min(1010px,calc(100% - 36px));max-width:none;max-height:min(94vh,950px);overflow-y:auto;overscroll-behavior:contain;}
.parts-modal:not([open]) {display:none}
.parts-modal::backdrop {background:rgba(4,17,36,.72);backdrop-filter:blur(4px)}
.parts-dialog-shell {display:block;min-width:0}
.parts-modal .icon {width:20px;height:20px;flex:none}
.parts-modal-header {display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:27px 32px 21px;background:#fff;border-bottom:1px solid #e8edf4;position:sticky;top:0;z-index:12}
.parts-modal-kicker {color:#d7192f;letter-spacing:.13em;font-weight:900;font-size:10px}
.parts-modal-header h2 {font-size:27px;letter-spacing:-.045em;margin:7px 0 8px;color:#102341}
.parts-modal-header p {font-size:12px;color:#627891;margin:0;line-height:1.6}
.parts-modal-close {background:#f3f6fa;color:#233954;border:1px solid #e6edf5;border-radius:12px;display:grid;place-items:center;flex:none;width:40px;height:40px;transition:background .15s}
.parts-modal-close:hover {background:#fcebed;color:#c92033}
.parts-modal-vehicle {padding:20px 32px 22px;background:#f9fbfd;border-bottom:1px solid #e9eff5}
.parts-modal-block-title {display:flex;align-items:center;gap:10px;margin-bottom:15px;color:#142b49}
.parts-step-label {width:25px;height:25px;border-radius:50%;background:#d7192f;color:#fff;display:grid;place-items:center;font-weight:900;font-size:12px;flex:none}
.parts-modal-block-title strong {font-size:15px}
.parts-modal-block-title small {font-size:11px;color:#8998a9}
.parts-vehicle-grid {display:grid;grid-template-columns:1.1fr 1.1fr .65fr 1.3fr;gap:11px}
.parts-vehicle-grid label {display:block;min-width:0;color:#42576e;font-size:11px;font-weight:800}
.parts-vehicle-grid input,.parts-search-wrap input,.parts-custom-row input {box-sizing:border-box;display:block;width:100%;height:43px;margin-top:6px;padding:10px 12px;font-family:inherit;font-size:12px;border:1px solid #dce6ef;background:#fff;border-radius:10px;color:#15304f;outline:0;min-width:0;}
.parts-vehicle-grid input:focus,.parts-search-wrap:focus-within,.parts-custom-row input:focus {border-color:#5489ba;box-shadow:0 0 0 3px rgba(37,101,161,.12)}
.parts-modal input::placeholder {color:#95a2b3}
.parts-modal-catalog {padding:22px 32px 20px}
.parts-search-wrap {height:48px;border:1px solid #dce6ef;border-radius:12px;display:flex;gap:9px;align-items:center;padding:0 14px;transition:border-color .15s,box-shadow .15s}
.parts-search-wrap>.icon {color:#45688d}
.parts-search-wrap input {flex:1;margin:0;padding:0;border:0;outline:0;box-shadow:none!important;background:transparent;font-size:13px;height:auto;min-width:0}
.parts-search-shortcut {color:#98a7b9;font-size:10px}
.parts-browser {display:grid;grid-template-columns:230px minmax(0,1fr);gap:16px;margin-top:17px;min-height:245px}
.parts-nav {max-height:280px;overflow-y:auto;overscroll-behavior:contain;padding-right:5px;display:flex;flex-direction:column;gap:4px}
.parts-nav-btn {display:flex;align-items:center;gap:10px;width:100%;min-height:37px;padding:9px 10px;border:1px solid transparent;border-radius:10px;color:#4d6681;background:transparent;font-size:11px;font-weight:800;text-align:left;transition:background .15s,color .15s}
.parts-nav-btn .icon {width:17px;height:17px;color:#8198b1}
.parts-nav-btn.active,.parts-nav-btn:hover {background:#edf4fc;border-color:#d8e7f5;color:#0b4279}
.parts-nav-btn.active .icon {color:#c32135}
.parts-results-area {min-width:0;background:#f8fafc;border:1px solid #e8eef5;border-radius:12px;padding:12px}
.parts-results-header {display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 3px 12px}
.parts-results-header h3 {margin:0;font-size:13px;letter-spacing:0}
.parts-results-header span {font-size:11px;color:#8091a6;white-space:nowrap}
.parts-results {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px;max-height:238px;overflow-y:auto;padding-right:3px;overscroll-behavior:contain}
.parts-item {display:flex;gap:9px;align-items:center;padding:11px 8px;text-align:left;border:1px solid #e3eaf2;border-radius:10px;background:#fff;color:#132c4c;transition:border-color .15s,box-shadow .15s}
.parts-item:hover,.parts-entire-category:hover {border-color:#dfa5ac;box-shadow:0 6px 17px rgba(12,39,75,.05)}
.parts-item>span:first-child {width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex:none;background:#f1f5fa;color:#256090}
.parts-item>span:first-child .icon {width:17px;height:17px}
.parts-item .parts-item-text {flex:1;min-width:0}
.parts-item strong {display:block;font-size:11px;line-height:1.35}
.parts-item small {display:block;color:#8797aa;font-size:9px;margin-top:3px}
.parts-item>.icon {color:#d7192f;width:14px;height:14px}
.parts-entire-category {grid-column:1/-1;border:1px dashed #b8cde0;border-radius:10px;background:#edf4fa;color:#173857;display:flex;align-items:center;gap:10px;padding:10px;text-align:left}
.parts-entire-category .icon {width:19px;height:19px;color:#c52839}
.parts-entire-category span {flex:1}
.parts-entire-category strong,.parts-entire-category small {display:block;font-size:11px}
.parts-entire-category small {color:#6e8399;font-size:10px;margin-top:2px}
.parts-empty {grid-column:1/-1;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;gap:8px;min-height:190px;padding:17px}
.parts-empty>.icon {height:27px;width:27px;color:#7896b4}
.parts-empty strong {font-size:14px}
.parts-empty p {font-size:12px;color:#758a9f;margin:0;max-width:320px}
.parts-use-query {border:1px solid #d9a1a8;background:#fff3f4;color:#b41b2d;font-size:12px;font-weight:800;border-radius:9px;padding:9px 14px;display:inline-flex;gap:7px;align-items:center;overflow-wrap:anywhere;max-width:100%}
.parts-use-query .icon {width:16px;height:16px}
.parts-custom {background:linear-gradient(90deg,#f7f9fc,#fff);border:1px solid #dee8f2;border-radius:14px;display:flex;align-items:flex-start;gap:14px;padding:17px 18px;margin-top:17px;}
.parts-custom-icon {display:grid;place-items:center;width:37px;height:37px;border-radius:10px;background:#eaf0f7;color:#24557d;flex:none}
.parts-custom-content {flex:1;min-width:0}
.parts-custom-content>label {font-size:13px;font-weight:900;color:#152e4e}
.parts-custom-content>p {font-size:11px;color:#7b8a9d;margin:3px 0 10px}
.parts-custom-row {display:flex;gap:10px;align-items:center}
.parts-custom-row input {flex:1;width:auto;margin:0;min-width:0}
.parts-custom-row .btn {flex:none;min-height:43px;padding:9px 14px;font-size:11px;border-radius:9px;white-space:nowrap}
.parts-custom-row .btn .icon {width:16px;height:16px}
.parts-custom-feedback {font-size:11px;color:#c32639!important;margin:6px 0 0!important}
.parts-custom-feedback:empty {display:none}
.parts-modal-footer {display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid #e9edf4;padding:16px 32px 19px;background:#fff}
.parts-modal-footer>span {display:flex;align-items:center;gap:8px;color:#798da4;font-size:10px}
.parts-modal-footer>span .icon {color:#20628b;width:17px;height:17px}
.parts-modal-secondary {border:0;background:#eff3f7;color:#38536e;border-radius:9px;padding:9px 12px;font-size:11px;font-weight:800;white-space:nowrap}
.parts-modal-secondary:hover {background:#e4eaf0}
@media (max-width:1050px) {
  .picker-promo {gap:24px;padding:32px}
  .picker-quick-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .parts-modal {max-height:95dvh}
  .parts-vehicle-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:650px) {
  .picker-promo {grid-template-columns:1fr;gap:24px;padding:26px 20px;border-radius:18px}
  .picker-promo-main h3 {font-size:28px}
  .picker-promo-main p {font-size:12px;margin-bottom:20px}
  .picker-promo-main .btn {width:100%;font-size:12px}
  .picker-promo-aside {padding:15px;box-shadow:none;}
  .picker-preview-step {padding:9px 2px}
  .picker-quick-head {display:block;margin:23px 0 12px}
  .picker-quick-head h3 {font-size:17px}
  .picker-quick-head span {display:block;margin-top:5px;font-size:11px}
  .picker-quick-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .picker-quick-card {flex-direction:column;align-items:flex-start;min-height:133px;padding:12px;position:relative}
  .picker-quick-card .picker-quick-arrow {position:absolute;right:12px;top:19px}
  .picker-quick-card strong {font-size:11px}
  .picker-quick-card small {font-size:10px}
  .picker-quick-icon {width:40px;height:40px}
  .parts-modal {width:calc(100% - 14px);max-height:calc(100dvh - 14px);border-radius:17px}
  .parts-modal-header {padding:18px 17px 14px;gap:10px}
  .parts-modal-header h2 {font-size:20px;line-height:1.25;margin:5px 0}
  .parts-modal-header p {font-size:10px}
  .parts-modal-close {height:34px;width:34px}
  .parts-modal-vehicle {padding:15px 17px 17px}
  .parts-modal-block-title {gap:7px;flex-wrap:wrap;margin-bottom:12px}
  .parts-modal-block-title small {flex-basis:100%;margin-left:33px}
  .parts-vehicle-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .parts-vehicle-grid label {font-size:10px}
  .parts-vehicle-grid input {height:40px;font-size:12px;padding:8px;margin-top:5px}
  .parts-modal-catalog {padding:16px 17px 14px}
  .parts-search-wrap {height:45px;padding:0 10px}
  .parts-search-shortcut {display:none}
  .parts-search-wrap input {font-size:11px}
  .parts-browser {display:block;margin-top:12px}
  .parts-nav {display:flex;flex-direction:row;gap:7px;max-height:none;overflow-x:auto;overflow-y:hidden;padding:0 0 8px;margin-bottom:10px;scrollbar-width:thin}
  .parts-nav-btn {flex:none;min-height:36px;width:auto;padding:8px 10px;white-space:nowrap;font-size:10px;background:#f4f7fb;border-color:#e9eef4}
  .parts-nav-btn .icon {width:15px;height:15px}
  .parts-results-area {padding:10px}
  .parts-results {grid-template-columns:1fr 1fr;max-height:185px;gap:6px}
  .parts-item {padding:8px 6px;gap:6px}
  .parts-item>span:first-child {display:none}
  .parts-item strong {font-size:10px}
  .parts-item small {font-size:9px}
  .parts-results-header {margin-bottom:8px}
  .parts-results-header h3 {font-size:12px}
  .parts-custom {gap:9px;padding:12px;margin-top:12px}
  .parts-custom-icon {width:30px;height:30px}
  .parts-custom-icon .icon {width:18px;height:18px}
  .parts-custom-content>label {font-size:12px}
  .parts-custom-content>p {font-size:10px}
  .parts-custom-row {flex-direction:column;align-items:stretch;gap:8px}
  .parts-custom-row input {width:100%;height:40px;font-size:11px}
  .parts-custom-row .btn {width:100%;font-size:11px;white-space:normal}
  .parts-modal-footer {padding:12px 17px;align-items:flex-start;flex-direction:column;gap:10px}
  .parts-modal-footer>span {font-size:10px}
  .parts-modal-secondary {width:100%;min-height:38px}
}
@media (prefers-reduced-motion:reduce) {
 .picker-quick-card {transition:none}
}

/* iOS Safari zooms focused inputs under 16px. Keep all picker inputs 16px on mobile. */
@media(max-width:650px){
  .parts-modal input,
  .parts-modal textarea,
  .parts-modal select{font-size:16px!important}
}
