/* Shared enquiry-cart layer; follows the established W—ROBOTICS palette. */
.cart-is-open { overflow:hidden; }
.raas-info-button { display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;min-height:36px;padding:0;border:0;border-radius:3px;background:transparent;color:inherit;cursor:pointer; }
.raas-info-button svg { width:20px;height:20px; }
.raas-info-button:hover { background:#ffffff24; }
.raas-info-button:focus-visible { outline:2px solid #2457f5;outline-offset:2px; }
.cart-dialog.raas-info-dialog {
 --raas-dialog-gap:16px;
 width:min(640px,calc(100vw - 2 * var(--raas-dialog-gap)));
 max-width:calc(100vw - 2 * var(--raas-dialog-gap));
 max-height:calc(100vh - 2 * var(--raas-dialog-gap));
 max-height:calc(100dvh - 2 * var(--raas-dialog-gap) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));
 overflow:hidden;margin:auto;padding:0;border-top:4px solid #f3cf56!important;
}
.cart-dialog.raas-info-dialog[open] { display:flex;flex-direction:column; }
.raas-info-dialog .cart-dialog-head { flex:0 0 auto;align-items:center;margin:0;padding:12px 24px; }
.raas-info-dialog .cart-close { flex-basis:44px;width:44px;height:44px; }
.raas-info-body { flex:1 1 auto;min-height:0;min-width:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:0 24px 20px;overflow-wrap:anywhere; }
.cart-dialog .raas-info-body:focus-visible { outline-offset:-3px; }
.raas-info-footer { flex:0 0 auto;padding:16px 24px;background:#fff;border-top:1px solid #e0e3df; }
.raas-info-footer .cart-primary { min-height:48px;white-space:normal;text-align:left; }
.raas-info-dialog .raas-eyebrow { font-size:11px;letter-spacing:.12em;color:#73776e;margin:0; }
.raas-info-dialog #raas-info-title { font-size:1.75rem;line-height:1.15;letter-spacing:-.025em;margin:0 0 8px; }
.raas-info-dialog .raas-info-body>p { font-size:1rem;line-height:1.5;margin:0 0 16px;color:#586158; }
.raas-info-dialog .raas-info-body>.raas-subtitle { font-size:.875rem;color:#78631c;margin-bottom:20px; }
.raas-info-dialog .raas-info-body>.raas-includes-title { margin-bottom:10px;color:#151917; }
.raas-includes { display:grid;gap:12px;margin:0 0 20px;padding-left:20px;font-size:1rem;line-height:1.5;color:#586158; }
.raas-includes strong { color:#151917;font-weight:600; }
.raas-info-dialog #raas-info-copy { color:#151917; }
.raas-info-dialog .raas-info-body>.raas-terms { background:#f7f3e4;padding:14px 16px;font-size:.875rem;margin-bottom:0; }
@media(max-width:450px),(max-height:540px) {
 .cart-dialog.raas-info-dialog { --raas-dialog-gap:8px; }
 .raas-info-dialog .cart-dialog-head { padding:8px 20px; }
 .raas-info-body { padding:0 20px 16px; }
 .raas-info-footer { padding:12px 20px; }
 .raas-info-dialog #raas-info-title { font-size:1.5rem; }
}
.raas-cart-note { display:flex;align-items:flex-start;gap:10px;background:#f7f3e4;border-left:3px solid #d9b940;padding:12px 14px;margin-bottom:16px; }
.raas-cart-note strong { font-size:13px; }
.raas-cart-note p { font-size:12px;margin:5px 0 0;color:#656c67; }
@media(max-width:450px) { .raas-info-button { flex-basis:44px;width:44px;min-height:44px; } }
.cart-header-button { display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 10px;background:none;color:inherit;border:1px solid transparent;cursor:pointer;font:inherit;font-size:13px;white-space:nowrap; }
.cart-header-button:hover { border-color:currentColor; }
.cart-header-button svg { width:21px;height:23px; }
[data-cart-count] { min-width:19px;height:19px;display:grid;place-items:center;border-radius:50%;background:#f3cf56;color:#151917;font-size:11px;font-weight:700; }
.home-header-tools { display:flex;align-items:center;justify-self:end;gap:14px; }
.cart-dialog { box-sizing:border-box;color:#151917;background:#fff;border:0;font:14px/1.5 Arial,sans-serif;padding:28px;max-height:100dvh;overscroll-behavior:contain; }
.cart-dialog *, .cart-dialog *::before,.cart-dialog *::after { box-sizing:border-box; }
.cart-dialog [hidden],.rental-enquiry-fields[hidden] { display:none!important; }
.cart-dialog::backdrop { background:rgba(12,20,16,.43);backdrop-filter:blur(3px); }
.cart-config-dialog { width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto; }
.cart-drawer { width:min(620px,100%);max-width:100%;height:100dvh;margin:0 0 0 auto; }
.cart-dialog-head { display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px; }
.cart-dialog h2 { font-size:27px;line-height:1.15;letter-spacing:-.7px;font-weight:500;margin:0; }
.cart-dialog h3 { font-size:18px;line-height:1.25;font-weight:500;margin:0; }
.cart-dialog p { margin:0; }
.cart-close,.cart-remove { border:0;background:transparent;cursor:pointer;flex:0 0 36px;width:36px;height:36px;font:28px/1 Arial,sans-serif;color:#151917; }
.cart-close:hover,.cart-remove:hover { background:#f2f4f1; }
.cart-eyebrow { font-size:10px;letter-spacing:1.5px;margin:0 0 7px!important;color:#68716b; }
.cart-lead { color:#606862;padding-bottom:24px;border-bottom:1px solid #dde1dd;max-width:52ch; }
.cart-config-product { display:flex;gap:20px;align-items:center;margin-bottom:24px; }
.cart-config-product img { width:92px;height:102px;object-fit:contain;background:#f2f4f1; }
.cart-config-product span,.cart-config-product small { display:block;font-size:12px;color:#657069;margin-bottom:6px; }
.cart-config-product h3 { font-size:24px;margin-bottom:4px; }
.cart-dialog label { display:grid;gap:7px;min-width:0;font-size:12px;font-weight:600;margin-bottom:16px; }
.cart-dialog input,.cart-dialog select,.cart-dialog textarea { width:100%;min-width:0;max-width:100%;min-height:44px;background:#fff;border:1px solid #cbd1cb;border-radius:0;padding:10px;font:14px Arial,sans-serif;color:#151917; }
.cart-dialog input[type=date] { appearance:none; }
.cart-dialog :focus-visible,.cart-header-button:focus-visible,.cart-card-add:focus-visible,.related-section :focus-visible { outline:2px solid #2457f5;outline-offset:3px; }
.cart-form-pair { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px; }
.cart-small-note { color:#667068;font-size:12px;line-height:1.5;margin:0 0 18px!important; }
.cart-config-price { border-top:1px solid #dde1dd;padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:12px; }
.cart-config-price strong { font-size:17px;font-weight:500; }
.cart-config-price span { font-size:11px;color:#667068; }
.cart-primary { min-height:48px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 18px;background:#f3cf56;border:1px solid #f3cf56;color:#151917;font:600 14px Arial,sans-serif;text-decoration:none;cursor:pointer; }
.cart-primary:hover { background:#e6c344;border-color:#e6c344; }
.cart-error { color:#a32722!important;font-size:12px;margin:0 0 12px!important; }
.cart-item { display:flex;gap:18px;padding:24px 0;border-bottom:1px solid #dde1dd; }
.cart-item>img { width:92px;height:106px;object-fit:contain;align-self:flex-start;background:#f2f4f1; }
.cart-item-content { flex:1;min-width:0; }
.cart-item-title { display:flex;justify-content:space-between;align-items:flex-start;gap:10px; }
.cart-item-title h3 { padding-top:6px; }
.cart-item-content>p { font-size:12px;color:#69706a;margin:4px 0; }
.cart-item-content p.cart-item-mode { color:#151917;line-height:1.6;margin:9px 0 12px; }
.cart-item-content p.cart-item-service { color:#364d3c;background:#f2f4f1;padding:8px 10px;margin-bottom:14px; }
/* One service control used in the product hero, enquiry and cart. */
.pdp .deployment-option,.cart-dialog .deployment-option { display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;padding:11px 12px;margin:0;background:#f4f5f1;border:1px solid #e0e3df;border-radius:3px;cursor:pointer; }
.pdp .deployment-option input,.cart-dialog .deployment-option input { width:18px;height:18px;min-height:18px;margin:1px 0 0;padding:0;accent-color:#151917; }
.deployment-option>span { display:grid;gap:3px; }
.deployment-option strong { display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;font-size:13px;font-weight:600;line-height:1.35; }
.deployment-option small { font-size:11px;font-weight:400;color:#656c67;margin-left:auto; }
.deployment-option>span>span { font-size:12px;font-weight:400;line-height:1.4;color:#656c67; }
.deployment-option:has(input:checked) { border-color:#829585;background:#f0f4ef; }
.deployment-option input:focus-visible { outline:2px solid #2457f5;outline-offset:3px; }
.product-summary>.deployment-option { margin-bottom:6px; }
@media(max-width:450px) { .deployment-option small { margin-left:0; }.deployment-option strong { font-size:14px; }.deployment-option>span>span { font-size:13px; } }
.cart-item-controls { display:flex;align-items:center;gap:14px;flex-wrap:wrap; }
.cart-item-controls>strong { font-size:12px;font-weight:500;margin-left:auto; }
.cart-quantity { display:flex;align-items:center;border:1px solid #cbd1cb; }
.cart-quantity button { width:32px;height:34px;border:0;background:none;color:#151917;font-size:18px;cursor:pointer; }
.cart-quantity span { min-width:24px;text-align:center;font-size:13px; }
.cart-quantity button:disabled { opacity:.3;cursor:default; }
.cart-edit { border:0;border-bottom:1px solid currentColor;background:none;padding:3px 0;font:12px Arial,sans-serif;color:#59625b;cursor:pointer; }
.cart-quote-summary { display:grid;gap:10px;padding:24px 0; }
.cart-quote-summary strong { font-size:18px;font-weight:500; }
.cart-quote-summary span { font-size:12px;color:#667068;max-width:56ch; }
.cart-continue { display:block;width:100%;padding:16px;background:none;border:0;font:13px Arial,sans-serif;color:#151917;cursor:pointer;text-decoration:underline;text-underline-offset:4px; }
.cart-storage-note { margin-top:22px!important;font-size:11px;color:#758078; }
.cart-live { font-size:12px;color:#435a47;margin-top:10px!important; }
.cart-enquiry-form { border-top:1px solid #dde1dd;padding-top:24px;margin-top:10px; }
.cart-enquiry-form h3 { margin-bottom:20px; }
.cart-preview-result { padding:14px;background:#f2f4f1;margin-top:14px!important; }
.cart-empty { padding:55px 0;max-width:360px;margin:auto;text-align:center; }
.cart-empty>svg { width:40px;height:40px;margin-bottom:20px; }
.cart-empty p { margin:16px 0 24px;color:#657069; }
.cart-card-add { border:0;background:none;padding:8px 0;font:inherit;font-size:12px;cursor:pointer;display:flex;gap:10px;align-items:center; }
.product-purchase-actions { display:flex;gap:8px; }
.product-purchase-actions .pdp-button { flex:1;min-height:44px;padding:12px 13px;font-size:13px;white-space:nowrap; }
.pdp-button.cart-secondary { background:#fff;color:#151917;border:1px solid #151917; }
.pdp-button.cart-secondary:hover { background:#f2f4f1; }
.rental-enquiry-fields { padding:16px;background:#f2f4f1; }
.rental-enquiry-fields p { font-size:12px;color:#667068;margin:0; }
.related-section { border-top:1px solid #dde1dd;background:#fff; }
.related-heading { display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:28px; }
.related-heading h2 { margin:8px 0 14px; }
.related-heading p:not(.story-label) { font-size:14px;color:#667068;max-width:61ch; }
.related-arrows { display:flex;gap:8px; }
.related-arrows button { width:44px;height:44px;border:1px solid #cbd1cb;background:#fff;font-size:20px;cursor:pointer; }
.related-arrows button:disabled { opacity:.3;cursor:default; }
.related-track { display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:1px;padding-bottom:16px;overscroll-behavior-x:contain;scrollbar-width:thin; }
.related-card { flex:0 0 min(360px,85vw);display:flex;flex-direction:column;scroll-snap-align:start;border:1px solid #dde1dd; }
.related-image { position:relative;display:block;background:#f2f4f1;height:245px; }
.related-image img { width:100%;height:100%;object-fit:contain;padding:28px; }
.related-image>span { position:absolute;top:12px;left:12px;font-size:10px;letter-spacing:.4px;color:#647068;background:#fff;padding:4px 7px; }
.related-copy { display:flex;flex-direction:column;padding:22px;flex:1; }
.related-maker { font-size:11px;color:#667068; }
.related-copy h3 { font-size:25px;letter-spacing:-.5px;font-weight:500;margin:10px 0; }
.related-copy>p:not(.related-maker) { font-size:13px;line-height:1.55;color:#667068;margin:0 0 18px; }
.related-specs { display:flex;gap:25px;margin-top:auto;margin-bottom:24px; }
.related-specs strong { display:block;font-size:19px;font-weight:500; }
.related-specs span { display:block;font-size:11px;color:#667068;margin-top:4px; }
.related-footer { display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;border-top:1px solid #dde1dd;padding-top:15px; }
.related-footer button { background:none;border:0;font:inherit;cursor:pointer;padding:8px 0; }
@media(min-width:1000px) { .commercial-box { grid-template-columns:minmax(140px,.8fr) minmax(265px,1.2fr); }.product-purchase-actions { grid-column:2;grid-row:2; }.commercial-box .quote-price strong { font-size:20px; } }
@media(max-width:1100px) { .cart-header-label { display:none; }.cart-header-button { padding-inline:5px; } }
@media(max-width:980px) { .home-header-tools { position:absolute;right:82px;top:50%;transform:translateY(-50%); }.home-header-tools .header-cta { display:none; } }
@media(max-width:800px) { .product-purchase-actions { margin-top:16px; }.related-heading { align-items:center; }.related-arrows { flex-shrink:0; }.related-heading h2 { font-size:29px; }.related-heading p:not(.story-label) { font-size:12px; }.related-image { height:225px; }.cart-dialog { padding:22px; }.cart-dialog h2 { font-size:24px; } }
@media(max-width:450px) { .home-header-tools { right:64px;gap:4px; }.cart-header-button { gap:4px; }.cart-item { gap:12px; }.cart-item>img { width:65px;height:85px; }.cart-item-controls { gap:12px; }.cart-item-controls>strong { margin-left:0; }.cart-config-price { align-items:flex-start;flex-direction:column;gap:4px; }.cart-form-pair { gap:10px; }.cart-dialog input,.cart-dialog select,.cart-dialog textarea { font-size:16px; }.cart-dialog { padding:20px; } }
