.parts-shop{--parts-border:#d8d9dc;--parts-gold:#ac9270}.parts-shop .section{max-width:1440px;margin:auto;padding:48px 5%}.parts-opening{background:#17191c;color:#fff;max-width:none!important;padding-top:62px!important;padding-bottom:40px!important}.parts-opening h1{font-size:clamp(32px,4.6vw,60px);line-height:1.08;margin:12px 0 24px;max-width:1000px}.parts-lead{font-size:18px;line-height:1.65;max-width:760px;color:#ddd}.parts-local-nav{display:flex;gap:14px 28px;flex-wrap:wrap;margin-top:30px}.parts-local-nav a{font-size:15px;padding:10px 0;color:#ebd0aa;border-bottom:1px solid #ac927070}.parts-block{scroll-margin-top:24px;border-bottom:1px solid #e4e4e4}.parts-block h2{font-size:clamp(25px,3vw,36px);margin:0 0 20px;line-height:1.25}.parts-block p{line-height:1.65}.parts-section-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:20px}.parts-section-heading h2{margin:0}.parts-section-heading>a{font-size:16px;text-decoration:underline;text-underline-offset:4px}.parts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.parts-grid label,.parts-search-input,.parts-result-toolbar label{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:500}.parts-shop input:not([type=checkbox]):not([type=file]),.parts-shop select,.parts-shop textarea{width:100%;max-width:100%;min-width:0;background:#fff;border:1px solid #b8b9bd;border-radius:4px;padding:13px 14px;font:inherit;font-size:16px;color:#17191c;min-height:48px}.parts-shop textarea{resize:vertical}.parts-shop input:focus,.parts-shop select:focus,.parts-shop textarea:focus,.parts-shop button:focus-visible,.parts-shop a:focus-visible{outline:3px solid #ac9270;outline-offset:3px}.parts-shop button,.parts-shop summary{cursor:pointer}.parts-search-modes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.parts-search-modes button,.parts-brand-shortcuts button,.parts-categories button{font:inherit;font-size:15px;background:#fff;border:1px solid var(--parts-border);padding:13px 18px;min-height:46px;border-radius:4px;color:#17191c}.parts-search-modes button[aria-pressed=true],.parts-categories button[aria-pressed=true]{background:#17191c;color:#fff;border-color:#17191c}.parts-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px}.parts-search-row .button{min-height:50px}.parts-brand-shortcuts{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 26px}.parts-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.parts-categories button{text-align:left;line-height:1.4;padding:18px;min-height:72px}.parts-result-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:24px 0;flex-wrap:wrap}.parts-result-toolbar label{min-width:230px}.parts-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.parts-product-card{border:1px solid var(--parts-border);border-radius:5px;padding:24px;display:flex;flex-direction:column;gap:12px;background:#fff;min-width:0}.parts-product-card h3{font-size:20px;line-height:1.35;margin:0}.parts-product-card p{margin:0;overflow-wrap:anywhere}.parts-product-card small{font-size:14px;line-height:1.5;color:#62656c}.parts-product-card .button{margin-top:auto;align-self:flex-start}.parts-product-card img{width:100%;height:170px;object-fit:contain}.parts-empty{padding:30px;background:#f2f3f4;border-left:3px solid var(--parts-gold);margin-top:22px}.parts-empty h3{font-size:22px;margin:0 0 10px}.parts-suggestions{display:flex;flex-wrap:wrap;gap:10px}.parts-suggestions button{font:inherit;font-size:15px;background:#f2f3f4;border:1px solid #ddd;border-radius:4px;padding:12px;min-height:46px}.parts-panel{border:1px solid var(--parts-border);padding:28px;border-radius:5px;background:#fafafa;margin:20px 0}.parts-wide{grid-column:1/-1}.parts-checks{border:0;padding:18px 0;margin:8px 0;display:flex;gap:18px;flex-wrap:wrap}.parts-checks legend{font-size:16px;font-weight:500;margin-bottom:12px}.parts-checks label,.parts-consent{display:flex;gap:10px;align-items:flex-start;font-size:16px;line-height:1.5}.parts-shop input[type=checkbox]{width:20px;height:20px;flex-shrink:0;margin-top:2px;accent-color:#17191c}.parts-consent{flex-wrap:wrap;margin:20px 0}.parts-consent a{text-decoration:underline}.parts-note,.parts-upload span{color:#62656c;font-size:14px;line-height:1.6}.parts-upload{padding:20px;border:1px dashed #999;background:#fff}.parts-upload input{font:inherit;max-width:100%}#photo-preview{display:flex;gap:12px;flex-wrap:wrap}#photo-preview img{width:100px;height:80px;object-fit:cover;border-radius:4px}#request-feedback:not(:empty){padding:16px;background:#fff;border-left:3px solid #ac9270}.parts-receipt{padding:24px;margin-top:24px;background:#fff;border:1px solid #ac9270}.parts-receipt code{overflow-wrap:anywhere;font-size:15px;user-select:all}.parts-receipt .button{margin:12px 8px 0 0}.parts-basket{border:1px solid #b7a58d;background:#fff;padding:20px}.parts-basket ul{padding-left:20px}.parts-basket button{font:inherit;background:none;border:0;text-decoration:underline;margin-left:14px;color:#7c3838;min-height:44px}.parts-contact .button{margin:12px 12px 0 0}.parts-dialog{width:min(900px,94vw);max-height:88vh;padding:30px;border:1px solid #ddd;border-radius:6px}.parts-dialog::backdrop{background:#0009}.dialog-close{display:block;margin-left:auto;padding:10px 14px;font:inherit;background:#eee;border:0;min-height:44px}.parts-dialog h2{font-size:28px;line-height:1.2;margin:20px 0}.parts-offer{padding:20px 0;border-top:1px solid #ddd;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}.parts-offer p{margin:5px 0;line-height:1.5}.parts-offer small{display:block;font-size:14px}.parts-status{padding:7px 12px;background:#eee8e0;border-radius:3px;font-size:14px;display:inline-block}.parts-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;list-style:none;padding:0}.parts-stages li{border:1px solid #ddd;padding:12px;font-size:14px;line-height:1.4}.parts-stages li.current{border:2px solid #ac9270;font-weight:500}.parts-stages li.past{background:#f2f3f4}.parts-quote{padding:24px;background:#f5f5f5;margin:20px 0}.parts-shop [hidden]{display:none!important}.parts-shop button:disabled{opacity:.6;cursor:wait}.parts-shop details summary{font-size:17px;line-height:1.5}.parts-shop details form{padding-top:20px}#tracking-result{scroll-margin-top:20px}.parts-error{color:#933c35}.parts-manager-table{overflow-x:auto}.parts-manager-table table{border-collapse:collapse;width:100%;font-size:15px}.parts-manager-table th,.parts-manager-table td{padding:12px;text-align:left;border-bottom:1px solid #ddd;white-space:nowrap}.parts-manager-actions{display:flex;gap:10px;flex-wrap:wrap}.parts-manager-actions button{min-height:44px}.parts-mobile-only{display:none}
@media(max-width:900px){.parts-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parts-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.parts-stages{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.parts-shop .section{padding:34px 6%}.parts-opening{padding-top:36px!important}.parts-lead{font-size:16px}.parts-local-nav{gap:4px 18px}.parts-grid,.parts-product-grid{grid-template-columns:1fr}.parts-search-row{grid-template-columns:1fr}.parts-search-row .button{width:100%}.parts-search-modes button{flex:1;font-size:14px;padding:12px 10px;line-height:1.4}.parts-categories button{padding:14px;font-size:14px}.parts-panel{padding:20px 16px}.parts-checks{flex-direction:column;gap:14px}.parts-section-heading{gap:12px}.parts-result-toolbar label{width:100%}.parts-dialog{padding:20px}.parts-consent{font-size:14px}.parts-receipt{padding:18px}.parts-product-card{padding:20px}}
@media print{.site-header,footer,.parts-local-nav,.parts-shop button,.parts-shop .button,.parts-shop form,.parts-opening,#parts-search,#maintenance,#parts-help,#garage,.parts-contact,.parts-shop details{display:none!important}.parts-shop .section{padding:12px 0}#orders>h2,#orders>p,#orders-list{display:none}#tracking-result{display:block!important}.parts-stages{display:none}.parts-quote{border:1px solid #bbb;background:none}}
/* Distinct service entry, independent of the parts purchase flow. */
.maintenance-opening{background:#f1f2f3;max-width:none!important}.maintenance-opening h1{font-size:clamp(32px,4.2vw,58px);line-height:1.12;margin:12px 0 24px}.maintenance-opening .parts-lead{color:#41454b}.maintenance-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0}.maintenance-address{font-size:16px;line-height:1.6}.maintenance-address a{text-decoration:underline}.maintenance-highlight{border:1px solid #ac9270;border-left:5px solid #ac9270;background:#f3f0eb;padding:32px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin:28px 0 36px}.maintenance-highlight>div:first-child{flex:1;min-width:240px}.maintenance-highlight h2{font-size:clamp(24px,2.5vw,34px);line-height:1.2;margin:8px 0 12px}.maintenance-highlight p{line-height:1.6;max-width:650px}.maintenance-highlight .maintenance-actions{display:flex;flex-direction:column;align-items:stretch;margin:0}.maintenance-highlight .button{min-height:50px;text-align:center}.maintenance-reg-card{margin-top:24px;border:1px solid #ddd;padding:28px;background:#fff}.maintenance-reg-header{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;flex-wrap:wrap}.maintenance-reg-header h3{font-size:26px;line-height:1.3;margin:8px 0}.maintenance-cost{background:#f2eee8;padding:18px 22px;font-size:15px;max-width:320px}.maintenance-cost span{display:block;margin-top:8px;font-size:18px;font-weight:500;line-height:1.5}.maintenance-reg-card h4{font-size:20px;margin:26px 0 16px}.maintenance-table-wrap{overflow-x:auto;max-width:100%}.maintenance-table{border-collapse:collapse;width:100%;font-size:16px;line-height:1.5}.maintenance-table th,.maintenance-table td{text-align:left;vertical-align:top;padding:15px;border-bottom:1px solid #ddd}.maintenance-table th{background:#f4f4f4;font-weight:500}.maintenance-schedule{padding-top:22px;margin-top:22px;border-top:1px solid #ddd}.maintenance-schedule summary{font-size:17px;min-height:44px;cursor:pointer}.maintenance-schedule .maintenance-table{margin-top:18px;min-width:450px}.maintenance-source{font-size:14px;color:#5d6269;margin-top:22px}.maintenance-source a{text-decoration:underline}.maintenance-pdf{width:100%;height:650px;border:1px solid #ccc;margin:12px 0}#book-maintenance,#maintenance-regulations{scroll-margin-top:24px}.service-parts-grid .service-parts-card .button{white-space:normal}
@media(max-width:600px){.maintenance-highlight{padding:24px 18px;margin:20px 0}.maintenance-highlight>div:first-child{min-width:0}.maintenance-highlight .maintenance-actions{width:100%}.maintenance-reg-card{padding:20px 14px}.maintenance-reg-header h3{font-size:23px}.maintenance-cost{width:100%;max-width:none}.maintenance-table{font-size:15px}.maintenance-table td,.maintenance-table th{padding:12px 8px}.maintenance-actions .button{width:100%;text-align:center}.maintenance-pdf{height:480px}}

#parts-basket{scroll-margin-top:24px}.basket-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 160px 110px;align-items:center;gap:16px;padding:20px 0;border-bottom:1px solid #ddd}.basket-row p{margin:6px 0;overflow-wrap:anywhere}.basket-row label{display:grid;gap:8px}.basket-row input{width:100%;min-height:44px}.basket-total{font-size:20px;line-height:1.5}.parts-basket .button{margin:6px 8px 6px 0}@media(max-width:700px){.basket-row{grid-template-columns:minmax(0,1fr) 100px}.basket-row>strong{font-size:18px}.basket-row button{width:100%}}

#customer-access{border:1px solid #ddd;padding:28px;background:#f7f8f9;margin-bottom:24px}#customer-access form{margin:20px 0}#auth-recovery-code{display:block;overflow-wrap:anywhere;font-size:16px;padding:16px;background:white}.saved-search-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:10px 0}.saved-search-row button{min-height:44px}.parts-panel textarea{max-width:100%;width:100%}.parts-panel summary{cursor:pointer;min-height:44px;padding:8px 0}.parts-offer button:disabled{cursor:default}#auth-user p{overflow-wrap:anywhere}@media(max-width:600px){#customer-access{padding:20px 16px}.parts-search-modes{flex-wrap:wrap}}

/* Catalogue tools follow the existing dealership palette. */
.catalog-filters{margin:20px 0}.parts-compare-scroll{overflow-x:auto}.parts-compare-table{width:100%;border-collapse:collapse;min-width:480px;font-size:1rem}.parts-compare-table th,.parts-compare-table td{padding:14px;border-bottom:1px solid #d8d8d8;text-align:left;vertical-align:top;overflow-wrap:anywhere}.parts-compare-table th{background:#f3f3f3}.parts-compare-table th button{display:block;margin-top:10px}.parts-mobile-bar{display:none}.offer-filters{margin:16px 0}#parts-comparison{margin-top:24px}#garage-add-form{margin-bottom:24px}
@media(max-width:700px){.parts-mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;gap:1px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#17191c}.parts-mobile-bar a{flex:1;text-align:center;padding:12px;color:white;font-size:1rem;text-decoration:none}.parts-mobile-bar a:last-child{background:#ac9270;color:#17191c}.parts-shop{padding-bottom:85px}.parts-compare-table{font-size:.9rem}.offer-filters{grid-template-columns:1fr 1fr}.parts-dialog{max-height:85dvh}}
.basket-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(620px,100%);height:100dvh;max-width:100%;max-height:100dvh;padding:24px;border:0;border-left:1px solid #d8d9dc;background:white;overflow:auto;box-sizing:border-box;color:#17191c}.basket-drawer::backdrop{background:#17191c80}.basket-drawer .basket-close{display:flex;align-items:center;gap:16px;min-height:44px;margin:0 0 20px auto;padding:8px 16px;border:1px solid #ac9270;background:white;font:inherit;cursor:pointer}.basket-close span{font-size:26px}.parts-shop .basket-drawer .section{padding:0;max-width:100%;border-bottom:0}.basket-drawer .basket-row{grid-template-columns:minmax(0,1fr) 100px}.basket-drawer .basket-row>*{min-width:0}.basket-drawer .basket-row .button{width:100%;padding:10px}.basket-drawer .parts-section-heading{align-items:flex-start;flex-wrap:wrap}.parts-shop{padding-bottom:0}@media(max-width:600px){.basket-drawer{padding:20px 6% calc(24px + env(safe-area-inset-bottom))}.basket-drawer .basket-row{grid-template-columns:minmax(0,1fr) 90px}.basket-drawer .basket-row strong,.basket-drawer .basket-row p{overflow-wrap:anywhere}}
