.hardware-devices{padding:clamp(64px,8vw,120px) 24px;background:radial-gradient(ellipse at 100% 0,rgba(255,128,0,.07),transparent 45%),#080808;scroll-margin-top:90px}
.hardware-devices-inner{max-width:1280px;margin:auto}
.hardware-devices-heading{max-width:720px;margin-bottom:44px}
.hardware-devices-heading h2{font-size:clamp(32px,4vw,56px);line-height:1.08;letter-spacing:-.04em;margin:18px 0;color:#fff}
.hardware-devices-heading p{color:#a6a6a6;line-height:1.7;font-size:17px;margin:0}
.device-grid{display:flex;gap:24px;align-items:stretch;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 0 12px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;position:relative}
.device-photo img{-webkit-user-drag:none;user-select:none}
.device-grid::-webkit-scrollbar{display:none}
.device-card{flex:0 0 calc((100% - 48px)/3);box-sizing:border-box;scroll-snap-align:start;background:#131313;border:1px solid #2b2b2b;border-radius:24px;overflow:hidden;transition:border-color .25s,box-shadow .25s;min-width:0}
.device-slider-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:-16px 0 24px}
.device-slider-controls span{color:#999;font-size:13px;letter-spacing:.05em;margin-right:10px}
.device-slider-controls button{width:46px;height:46px;border-radius:50%;border:1px solid #484038;background:#17130f;color:#ff8a00;font:24px/1 Arial,sans-serif;cursor:pointer;transition:background .2s}
.device-slider-controls button:hover{background:#332315}
.device-slider-controls button:focus-visible{outline:2px solid #ff8a00;outline-offset:3px}
.device-slider-controls button:disabled{opacity:.3;cursor:default}
.device-card:hover{border-color:#6b441f;box-shadow:0 12px 32px #0005}
.device-photo{display:block;position:relative;width:100%;aspect-ratio:1.35;background:#fff;border:0;border-radius:0;padding:0;overflow:hidden;color:#292929;text-align:left}
button.device-photo{cursor:pointer}
.device-photo:focus-visible{outline:3px solid #ff8a00;outline-offset:-5px}
.device-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:6px 8px 22px;transform:scale(1.10);box-sizing:border-box;transition:opacity .3s ease;pointer-events:none}
.device-image-1{opacity:0}
.device-photo-caption{position:absolute;bottom:13px;left:20px;right:48px;font:600 11px/1.3 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#747474;pointer-events:none}
.device-photo-caption span:nth-child(2){display:none}
.device-photo-switch{position:absolute;bottom:10px;right:15px;border-radius:50%;width:27px;height:27px;background:#f2f2f2;text-align:center;font:19px/27px Arial,sans-serif;pointer-events:none}
.device-details{padding:14px 16px}
.device-category{color:#ff8a00;font-size:10px;letter-spacing:.16em;font-weight:700;text-transform:uppercase}
.device-details h3{color:#fff;font-size:17px;line-height:1.2;letter-spacing:-.025em;margin:7px 0 9px}
.device-intro{font-size:12px;line-height:1.4;color:#aaa;margin:-2px 0 8px}
.device-details dl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
.device-details dl>div{padding:7px 0;border-top:1px solid #ffffff12}
.device-details dt{color:#858585;font-size:10px;line-height:1.3;margin-bottom:3px}
.device-details dd{color:#d6d6d6;font-size:12px;line-height:1.4;margin:0;overflow-wrap:anywhere}
.device-card.is-flipped .device-image-0,.device-photo:focus-visible .device-image-0{opacity:0}
.device-card.is-flipped .device-image-1,.device-photo:focus-visible .device-image-1{opacity:1}
.device-card.is-flipped .device-photo-caption span:first-child,.device-photo:focus-visible .device-photo-caption span:first-child{display:none}
.device-card.is-flipped .device-photo-caption span:nth-child(2),.device-photo:focus-visible .device-photo-caption span:nth-child(2){display:inline}
@media(min-width:601px) and (hover:hover) and (pointer:fine){.device-grid{scroll-snap-type:none;cursor:grab;user-select:none}.device-grid:active{cursor:grabbing}.has-second-photo:hover .device-image-0{opacity:0}.has-second-photo:hover .device-image-1{opacity:1}.has-second-photo:hover .device-photo-caption span:first-child{display:none}.has-second-photo:hover .device-photo-caption span:nth-child(2){display:inline}}
@media(max-width:1050px){.device-card{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:600px){.hardware-devices{padding:64px 20px}.device-grid{gap:22px}.device-card{flex-basis:100%}.device-repeat{display:none}.device-details{padding:14px 16px}.device-photo{aspect-ratio:1.35}.hardware-devices-heading{margin-bottom:30px}}
@media(prefers-reduced-motion:reduce){.device-image,.device-card{transition:none}}
.device-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:-16px 0 26px;position:relative;z-index:3}
.device-tool-button{display:flex;align-items:center;justify-content:center;height:44px;min-width:44px;padding:0 12px;border:1px solid #3b352e;border-radius:12px;background:#171410;color:#e9e3db;cursor:pointer}
.device-tool-button svg{width:20px;height:20px}
.device-tool-button:focus-visible,#device-search:focus-visible{outline:2px solid #ff8a00;outline-offset:3px}
.device-filter-wrap{position:relative}
.device-filter-button{min-width:155px;justify-content:space-between;gap:20px;font-size:14px}
.device-filter-list{position:absolute;right:0;top:52px;min-width:180px;padding:7px;background:#1a1815;border:1px solid #4a3929;border-radius:14px;box-shadow:0 16px 38px #0009;display:grid;gap:3px}
.device-filter-list button{background:transparent;border:0;padding:12px 14px;text-align:left;border-radius:8px;color:#ddd;font-size:14px;cursor:pointer}
.device-filter-list button:hover,.device-filter-list button[aria-pressed=true]{color:#ff9b2b;background:#ff8a001a}
#device-search{height:44px;width:260px;max-width:100%;border:1px solid #3b352e;border-radius:12px;background:#171410;color:#eee;padding:0 14px;font-size:14px;box-sizing:border-box}
#device-search-box[hidden],.device-filter-list[hidden],.device-empty[hidden]{display:none}
.device-empty{padding:30px;border:1px solid #333;border-radius:18px;color:#aaa;font-size:15px}
.device-grid.is-static .device-repeat{display:none}
.device-photo img{-webkit-touch-callout:none}
@media(max-width:600px){.device-toolbar{flex-wrap:wrap;margin:0 0 22px}.device-filter-button{min-width:155px}#device-search-box{flex-basis:100%;order:3}#device-search{width:100%}}
.device-grid.is-autoplay{scroll-snap-type:none}@media(max-width:600px){.device-repeat{display:block}.device-grid.is-static .device-repeat{display:none}}
.device-search-wrap{display:flex;align-items:center;flex:0 1 auto;min-width:44px}
#device-search-toggle{flex-shrink:0;transition:color .25s,background .25s,border-color .25s}
.device-search-wrap.is-open #device-search-toggle{color:#ff9824;border-color:#805323;background:#302114}
#device-search-box{width:260px;max-width:0;opacity:0;overflow:hidden;margin-left:0;transform:translateX(-10px);pointer-events:none;transition:max-width .32s cubic-bezier(.2,.8,.2,1),opacity .22s,transform .32s,margin-left .32s}
.device-search-wrap.is-open #device-search-box{max-width:260px;opacity:1;margin-left:12px;transform:translateX(0);pointer-events:auto}
@media(max-width:600px){.device-search-wrap{position:static}#device-search-box{position:absolute;left:0;right:0;top:54px;width:100%;max-width:none;max-height:0;transform:translateY(-8px);margin:0;transition:max-height .3s,opacity .25s,transform .3s}.device-search-wrap.is-open #device-search-box{max-width:none;max-height:48px;margin:0;transform:translateY(0)}.device-toolbar{transition:padding-bottom .3s}.device-toolbar:has(.device-search-wrap.is-open){padding-bottom:56px}}
@media(prefers-reduced-motion:reduce){#device-search-box,#device-search-toggle,.device-toolbar{transition:none}}
.device-barcode-button{margin-top:8px;padding:0;border:0;background:none;color:#ff9b35;font:600 12px/1.5 Arial,sans-serif;cursor:pointer;text-align:left}
.device-barcode-button:focus-visible{outline:2px solid #ff8a00;outline-offset:4px}
.device-barcode-dialog{width:min(480px,calc(100vw - 40px));padding:30px;box-sizing:border-box;background:#171410;color:#ddd;border:1px solid #614021;border-radius:22px;max-height:85vh;overflow:auto}
.device-barcode-dialog::backdrop{background:#000a;backdrop-filter:blur(5px)}
.device-barcode-dialog h2{font-size:26px;color:#fff;letter-spacing:-.03em;margin:14px 0 25px}
.device-barcode-dialog h3{font-size:13px;color:#ff9b35;margin:20px 0 9px}
.device-barcode-dialog p{font-size:14px;line-height:1.8;margin:0}
.barcode-close{float:right;width:30px;height:30px;border:1px solid #555;background:none;border-radius:50%;color:#ccc;font-size:22px;cursor:pointer}



.hardware-products-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}
.device-catalogue-open{width:54px;height:54px;flex:0 0 54px;display:grid;place-items:center;border:1px solid #6a492a;border-radius:50%;background:#20170f;color:#ff9b35;cursor:pointer;transition:transform .25s,background .25s}
.device-catalogue-open svg{width:25px;height:25px;transition:transform .25s}
.device-catalogue-open:hover{background:#382516}.device-catalogue-open:hover svg{transform:translateX(3px)}
.device-catalogue-open:focus-visible,.catalogue-close:focus-visible,.catalogue-barcodes summary:focus-visible{outline:2px solid #ff9b35;outline-offset:4px}
.device-catalogue-dialog{width:min(1200px,calc(100vw - 48px));max-height:90dvh;padding:0;background:#0e0e0e;color:#ddd;border:1px solid #5b3b20;border-radius:24px;overflow:auto;overscroll-behavior:contain;box-sizing:border-box}
.device-catalogue-dialog::backdrop{background:#000b;backdrop-filter:blur(7px)}
.device-catalogue-dialog[open]{animation:catalogue-enter .25s ease-out}
.catalogue-header{position:sticky;top:0;z-index:4;background:#14120f;border-bottom:1px solid #ffffff15;display:flex;align-items:center;justify-content:space-between;padding:22px 28px}
.catalogue-header h2{font-size:30px;line-height:1.15;letter-spacing:-.04em;margin:6px 0 0;color:white}
.catalogue-close{width:40px;height:40px;border:1px solid #554330;border-radius:50%;background:#221a13;color:#eee;font:26px/1 Arial;cursor:pointer}
.catalogue-content{padding:24px 28px 32px}
.catalogue-group+.catalogue-group{margin-top:34px}
.catalogue-group-title{color:white;font-size:21px;letter-spacing:-.025em;margin:0 0 16px;display:flex;align-items:center;gap:12px}
.catalogue-group-title>span{font:12px/1 Arial;color:#ffab52;background:#ff8a001a;padding:6px 9px;border-radius:20px}
.catalogue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.catalogue-card{border-radius:18px}.catalogue-card .device-photo{aspect-ratio:1.3}
.catalogue-card .device-image{transform:none;padding:8px 8px 26px}
.catalogue-card .device-details{padding:14px}.catalogue-card .device-details h3{margin-top:0}
.catalogue-barcodes{margin-top:10px;font-size:12px;line-height:1.6}
.catalogue-barcodes summary{color:#ffab52;cursor:pointer}.catalogue-barcodes p{color:#bbb;margin:8px 0 0;overflow-wrap:anywhere}
@keyframes catalogue-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:601px) and (max-width:950px){.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
.hardware-products-heading{gap:12px}.hardware-devices-heading{min-width:0}.hardware-devices-heading h2{font-size:30px}
.device-catalogue-open{width:44px;height:44px;flex-basis:44px;align-self:center}
.device-catalogue-dialog{width:calc(100vw - 20px);max-height:92dvh;border-radius:18px}
.catalogue-header{padding:16px}.catalogue-header h2{font-size:25px}.catalogue-content{padding:18px 12px 24px}
.catalogue-group-title{font-size:19px;margin-bottom:12px}.catalogue-group+.catalogue-group{margin-top:25px}
.catalogue-grid{display:flex;flex-direction:column;gap:12px}
.catalogue-card{display:grid;grid-template-columns:34% minmax(0,1fr);flex:none;border-radius:13px;align-items:stretch}
.catalogue-card .device-photo{aspect-ratio:auto;height:100%;min-height:150px}
.catalogue-card .device-image{padding:8px 4px 25px;transform:none}
.catalogue-card .device-photo-caption{left:8px;right:8px;bottom:10px;font-size:8px;letter-spacing:.03em}
.catalogue-card .device-details{padding:12px}.catalogue-card .device-details h3{font-size:15px;margin-bottom:8px}
.catalogue-card .device-details dl{grid-template-columns:1fr}.catalogue-card .device-details dl>div{padding:5px 0}
.catalogue-card .device-details dd{font-size:11px}.catalogue-card .device-details dt{font-size:9px}.catalogue-card .device-intro{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.device-catalogue-dialog[open]{animation:none}.device-catalogue-open,.device-catalogue-open svg{transition:none}}.device-catalogue-dialog{margin:auto;max-width:none}

.device-inline-barcodes summary{font-weight:600}
.barcode-inline-content{padding:2px 0 4px}.barcode-inline-content h4{font-size:11px;color:#ffab52;margin:12px 0 4px}.barcode-inline-content p{font-size:12px;line-height:1.65;margin:0;color:#ccc}
.device-inline-barcodes[open] .barcode-inline-content{animation:barcode-reveal .22s ease-out}
@keyframes barcode-reveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.device-inline-barcodes[open] .barcode-inline-content{animation:none}}

.device-card:has(.barcode-card-panel){position:relative}
.barcode-card-panel[hidden]{display:none}
.barcode-card-panel{position:absolute;inset:0;z-index:2;background:#171410;padding:24px;overflow:auto;overscroll-behavior:contain;box-sizing:border-box;border-radius:inherit;animation:barcode-reveal .2s ease-out}
.barcode-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.barcode-card-close{width:30px;height:30px;flex-shrink:0;border:1px solid #62594f;border-radius:50%;background:#171410;color:#ddd;font:22px/1 Arial;cursor:pointer}
.barcode-card-close:focus-visible{outline:2px solid #ff9b35;outline-offset:3px}
.barcode-card-panel h3{font-size:25px;line-height:1.15;color:#fff;letter-spacing:-.025em;margin:16px 0 22px}
.barcode-card-panel h4{font-size:12px;color:#ff9b35;margin:18px 0 7px}
.barcode-card-panel p{font-size:13px;line-height:1.75;color:#ccc;margin:0;overflow-wrap:anywhere}
@media(max-width:600px){.barcode-card-panel{padding:20px}.barcode-card-panel h3{font-size:23px}.catalogue-card .barcode-card-panel{padding:12px}.catalogue-card .barcode-card-panel h3{font-size:19px;margin:10px 0}.catalogue-card .barcode-card-panel h4{margin-top:12px}.catalogue-card .barcode-card-panel p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.barcode-card-panel{animation:none}}

/* Product catalogue with an enquiry cart. */
.device-catalogue-dialog{width:min(1460px,calc(100vw - 48px))}
.catalogue-shop{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:start}
.catalogue-content{min-width:0;padding:24px}
.catalogue-add{display:block;width:100%;margin-top:14px;padding:11px 12px;background:#ff941f;color:#15100b;border:0;border-radius:10px;font:700 12px/1.3 Arial,sans-serif;cursor:pointer;transition:background .2s,transform .2s}
.catalogue-add:hover{background:#ffad4e;transform:translateY(-1px)}
.catalogue-cart{position:sticky;top:103px;border-left:1px solid #ffffff16;background:#15120f;padding:22px 18px;max-height:calc(90dvh - 106px);display:flex;flex-direction:column;min-height:330px;box-sizing:border-box;scroll-margin-top:110px}
.cart-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px}
.cart-heading h3{font-size:22px;color:white;letter-spacing:-.025em;margin:0}.cart-heading>span{font-size:11px;color:#ffab52;background:#ff8a001a;padding:6px 9px;border-radius:20px;white-space:nowrap}
.cart-lines{overflow:auto;min-height:0;flex:1;overscroll-behavior:contain}
.cart-line{display:flex;align-items:flex-start;gap:10px;padding:14px 0;border-top:1px solid #ffffff15}
.cart-line:first-child{border-top:0;padding-top:0}
.cart-line>img{width:52px;height:54px;object-fit:contain;flex-shrink:0;background:#fff;border-radius:8px}
.cart-line-details{flex:1;min-width:0}.cart-line h4{font-size:12px;color:#eee;line-height:1.5;margin:0 0 8px;overflow-wrap:anywhere}
.cart-quantity{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.cart-quantity button{width:26px;height:26px;display:grid;place-items:center;border:1px solid #4d4033;border-radius:7px;background:#201a14;color:#eee;font-size:15px;cursor:pointer}
.cart-quantity span{font-size:12px;color:#ddd;min-width:14px;text-align:center}
.cart-quantity .cart-remove{width:auto;border:0;background:none;font-size:10px;color:#bbb;padding:0}
.cart-quantity button:disabled{opacity:.4;cursor:default}
.cart-empty{text-align:center;color:#888;padding:26px 0 35px}.cart-empty>span{font-size:32px;color:#ffab52}.cart-empty h4{font-size:14px;color:#ddd;margin:10px 0}.cart-empty p{font-size:12px;line-height:1.6;margin:0}
.cart-footer{padding-top:16px;border-top:1px solid #ffffff15;margin-top:18px}
.cart-footer p{font-size:11px;color:#a59c92;line-height:1.6;margin:0 0 12px}
.cart-checkout,.cart-whatsapp{display:block;width:100%;border:0;background:#ff941f;color:#17100a;border-radius:11px;padding:14px;font:700 14px/1.2 Arial,sans-serif;cursor:pointer}
.cart-checkout:disabled{background:#34302b;color:#878078;cursor:default}
.catalogue-checkout-form{padding:30px;min-width:0;scroll-margin-top:115px}
.catalogue-checkout-form[hidden],#catalogue-products[hidden],.cart-checkout[hidden]{display:none}
.checkout-back{background:none;border:0;padding:0;color:#ffab52;font-size:13px;cursor:pointer;margin-bottom:28px;display:block}
.catalogue-checkout-form h2{font-size:30px;color:white;letter-spacing:-.04em;margin:10px 0 15px}
.catalogue-checkout-form>p{color:#aaa;font-size:14px;line-height:1.7;max-width:480px;margin:0 0 25px}
#cart-enquiry-form{display:grid;gap:10px;max-width:480px}
#cart-enquiry-form label{font-size:13px;color:#ddd;margin-top:9px}
#cart-enquiry-form label span{color:#ff9b35}
#cart-enquiry-form input{width:100%;box-sizing:border-box;height:48px;background:#201c17;border:1px solid #514336;border-radius:11px;padding:0 14px;color:#fff;font-size:16px}
.cart-whatsapp{margin-top:20px;background:#25d366;color:#0c2314}
.catalogue-add:focus-visible,.cart-checkout:focus-visible,.cart-whatsapp:focus-visible,.checkout-back:focus-visible,.cart-quantity button:focus-visible,#cart-enquiry-form input:focus-visible,.cart-mobile-shortcut:focus-visible{outline:2px solid #ffab52;outline-offset:3px}
.cart-feedback{position:sticky;bottom:12px;margin:0 auto;width:fit-content;max-width:calc(100% - 40px);border-radius:10px;padding:10px 15px;background:#3b2a18;color:#ffd6a4;font-size:12px;z-index:7;box-shadow:0 8px 20px #0006;pointer-events:none}
.cart-feedback:empty{display:none}
.cart-mobile-shortcut{display:none}
@media(min-width:601px) and (max-width:1100px){.catalogue-shop{grid-template-columns:minmax(0,1fr) 270px}.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogue-content{padding:18px}.catalogue-cart{padding:18px 14px}}
@media(min-width:601px) and (max-width:850px){.catalogue-grid{grid-template-columns:1fr}}
@media(max-width:600px){
.device-catalogue-dialog{width:calc(100vw - 20px)}
.catalogue-shop{display:block}
.catalogue-content{padding:18px 12px 24px}
.catalogue-cart{position:static;border-left:0;border-top:1px solid #5b3b20;max-height:none;min-height:240px;padding:22px 16px;scroll-margin-top:96px}
.cart-lines{max-height:340px}
.catalogue-add{padding:10px;font-size:11px;margin-top:10px}
.cart-mobile-shortcut{position:sticky;bottom:0;z-index:5;width:100%;display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-top:1px solid #624023;background:#ff941f;color:#17100a;min-height:50px;font:700 13px Arial,sans-serif;cursor:pointer}
.cart-mobile-shortcut>span{background:#15100b;color:#ffb75f;border-radius:20px;min-width:24px;height:24px;line-height:24px}
.catalogue-checkout-form{padding:24px 18px}.catalogue-checkout-form h2{font-size:26px}
.cart-feedback{bottom:60px}
.is-checking-out .cart-mobile-shortcut{display:none}
}
@media(prefers-reduced-motion:reduce){.catalogue-add{transition:none}}

@media(min-width:601px){.catalogue-cart{height:calc(90dvh - 106px)}}
.cart-message-preview{margin-top:14px;font-size:12px;color:#ffab52}.cart-message-preview summary{cursor:pointer}
.cart-message-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.7 Arial,sans-serif;color:#ccc;padding:14px;background:#201b15;border-radius:10px;margin-top:10px}

.catalogue-checkout-form{position:relative}
.cart-send-stage[hidden],.cart-send-result[hidden]{display:none}
.cart-send-stage{position:absolute;inset:90px 24px 24px;min-height:300px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;overflow:hidden}
.cart-flight-animation{position:relative;width:100%;height:220px;display:flex;justify-content:center;align-items:center}
.is-cart-sending #cart-enquiry-form{animation:supportFormFold .62s cubic-bezier(.65,0,.35,1) forwards;pointer-events:none}
.is-cart-sending .support-envelope{animation:supportEnvelope 1.25s .42s cubic-bezier(.34,1.56,.64,1) both}
.is-cart-sending .support-envelope-flap{animation:supportFlap .52s .66s ease-in-out both}
.is-cart-sending .support-plane{animation:supportPlaneForm 1.65s 1.43s cubic-bezier(.42,0,.28,1) both}
.is-cart-sending .support-flight-trail{animation:supportTrail 1.15s 1.68s ease-out both}
.cart-sending-label{font-size:14px;color:#ffb362;margin:14px 0}
.is-cart-ready .cart-flight-animation,.is-cart-ready .cart-sending-label{display:none}
.cart-send-result{max-width:400px;animation:supportSuccess .5s ease both;transform:translateY(16px);opacity:0}
.cart-send-check{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 20px;border-radius:20px;background:#ff8a001a;color:#ffa235;border:1px solid #ff8a0055;font-size:30px}
.cart-send-result h3{font-size:29px;line-height:1.2;color:white;letter-spacing:-.03em;margin:0 0 14px}
.cart-send-result p{font-size:14px;line-height:1.7;color:#aaa;margin:0 0 22px}
.cart-send-result a{text-decoration:none;box-sizing:border-box}
.cart-send-result .checkout-back{margin:20px auto 0}
@media(max-width:600px){.cart-send-stage{inset:100px 18px 18px}.cart-send-result h3{font-size:25px}.cart-flight-animation{height:170px}}
@media(prefers-reduced-motion:reduce){.is-cart-sending #cart-enquiry-form{animation:none;opacity:0}.is-cart-sending .support-envelope,.is-cart-sending .support-plane,.is-cart-sending .support-flight-trail{display:none;animation:none}.cart-send-result{animation:none;opacity:1;transform:none}}
.is-cart-sending>.device-category,.is-cart-sending>h2,.is-cart-sending>p{visibility:hidden}

/* Align actions across product rows and reuse catalogue search/filter controls. */
@media(min-width:601px){.catalogue-card{display:flex;flex-direction:column}.catalogue-card .device-photo{flex-shrink:0}.catalogue-card .device-details{display:flex;flex-direction:column;flex:1}.catalogue-card .catalogue-add{margin-top:auto}.catalogue-card .device-details dl{margin-bottom:14px}.catalogue-card .device-barcode-button{margin-bottom:14px}}
@media(max-width:600px){.catalogue-card .device-details{display:flex;flex-direction:column}.catalogue-card .catalogue-add{margin-top:auto}.catalogue-card .device-details dl{margin-bottom:10px}}
.catalogue-card[hidden],.catalogue-group[hidden]{display:none}
.catalogue-accessible-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.catalogue-header{gap:16px;min-height:90px;box-sizing:border-box}
.catalogue-tools{margin:0 0 0 auto;flex-wrap:nowrap}
.catalogue-tools .catalogue-search-box{width:260px;max-width:0;opacity:0;overflow:hidden;margin-left:0;transform:translateX(-10px);pointer-events:none;transition:max-width .32s cubic-bezier(.2,.8,.2,1),opacity .22s,transform .32s,margin-left .32s}
.catalogue-tools .is-open .catalogue-search-box{max-width:260px;opacity:1;margin-left:12px;transform:translateX(0);pointer-events:auto}
.catalogue-tools input[type=search]{height:44px;width:260px;max-width:100%;border:1px solid #3b352e;border-radius:12px;background:#171410;color:#eee;padding:0 14px;font-size:14px;box-sizing:border-box}
.catalogue-tools input[type=search]:focus-visible{outline:2px solid #ff8a00;outline-offset:3px}
.catalogue-tools .is-open #catalogue-search-toggle{color:#ff9824;border-color:#805323;background:#302114}
.catalogue-tools .device-filter-list[hidden]{display:none}
.catalogue-header>form{flex-shrink:0}
.is-checking-out .catalogue-tools{display:none}
.catalogue-cart{top:90px;max-height:calc(90dvh - 90px)}
@media(min-width:601px){.catalogue-cart{height:calc(90dvh - 90px)}}
@media(min-width:601px) and (max-width:900px){.catalogue-tools .catalogue-search-box,.catalogue-tools input[type=search]{width:180px}.catalogue-tools .is-open .catalogue-search-box{max-width:180px}}
@media(max-width:600px){
.catalogue-header{gap:10px;flex-wrap:wrap;padding:14px 12px;min-height:80px}
.catalogue-header>.device-category{font-size:9px}
.catalogue-header>div:first-child{flex-basis:100%}
.catalogue-tools{margin:0 auto 0 0;flex:1;gap:8px;padding-bottom:0}
.catalogue-tools .device-filter-button{min-width:140px;font-size:12px}
.catalogue-tools .catalogue-search-box{position:absolute;left:0;right:0;top:52px;width:100%;max-width:none;max-height:0;transform:translateY(-8px);margin:0;transition:max-height .3s,opacity .25s,transform .3s}
.catalogue-tools .is-open .catalogue-search-box{max-width:none;max-height:48px;transform:translateY(0);margin:0}
.catalogue-tools input[type=search]{width:100%;font-size:16px}
.catalogue-tools:has(.is-open){padding-bottom:56px}
.catalogue-header>form{align-self:flex-start}
.catalogue-cart{max-height:none}
}
@media(prefers-reduced-motion:reduce){.catalogue-tools .catalogue-search-box{transition:none}}

/* Compact summaries on the main slider; full specifications stay in the card. */
#hardware-device-grid .device-card{display:flex;flex-direction:column;position:relative}
#hardware-device-grid .device-photo{flex-shrink:0}
#hardware-device-grid .device-details{height:185px;box-sizing:border-box;padding:12px 16px;display:flex;flex-direction:column;min-height:0;overflow:hidden}
#hardware-device-grid .device-category{font-size:9px}
#hardware-device-grid .device-details h3{font-size:16px;line-height:1.2;margin:6px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#hardware-device-grid .device-intro{font-size:11px;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#hardware-device-grid .device-details dl{gap:0 10px}
#hardware-device-grid .device-details dl>div{padding:5px 0}
#hardware-device-grid .device-details dt{font-size:9px}
#hardware-device-grid .device-details dd{font-size:11px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#hardware-device-grid .device-barcode-button{margin-top:auto;padding-top:5px;font-size:11px;flex-shrink:0}
@media(max-width:600px){#hardware-device-grid .device-details{height:180px;padding:12px 14px}}
#hardware-device-grid.is-static .device-repeat{display:none}

#cart-enquiry-form .cart-phone-group{height:48px;border-radius:11px;grid-template-columns:112px minmax(0,1fr);background:#201c17;border-color:#514336}
#cart-enquiry-form .cart-phone-group input{height:100%;padding:0 12px;outline:none}
.cart-phone-group .site-select-trigger{font-size:14px;padding:10px;gap:4px}
.cart-phone-group select{color:#eee;font-size:14px}
.cart-phone-group .site-select{min-width:0}
.cart-flight-animation .support-plane{display:none}
.cart-swallow{position:absolute;width:210px;height:155px;color:#ff8a1a;opacity:0;filter:drop-shadow(0 14px 18px #ff8a0033)}
.is-cart-sending .cart-swallow{animation:cartSwallowFlight 1.85s 1.05s cubic-bezier(.4,0,.25,1) both}
.is-cart-sending .swallow-wing{transform-origin:113px 74px;animation:swallowWingbeat .3s 1.05s ease-in-out infinite alternate}
.is-cart-sending .swallow-letter{transform-origin:170px 73px;animation:swallowLetterSway .45s 1.05s ease-in-out infinite alternate}
.is-cart-sending .support-envelope{animation:cartLetterFold 1.1s .3s ease both}
.is-cart-sending .support-envelope-flap{animation:supportFlap .4s .48s ease-in-out both}
.is-cart-ready .cart-swallow{display:none}
@keyframes cartLetterFold{0%{opacity:0;transform:scale(.3) translateY(55px)}35%,65%{opacity:1;transform:scale(.85)}100%{opacity:0;transform:translate(45px,16px) scale(.25)}}
@keyframes cartSwallowFlight{0%{opacity:0;transform:translate(-80px,35px) rotate(-8deg) scale(.5)}18%{opacity:1;transform:translate(-25px,20px) rotate(-6deg) scale(.9)}45%{opacity:1;transform:translate(25px,-10px) rotate(-12deg) scale(1)}75%{opacity:1;transform:translate(150px,-95px) rotate(-18deg) scale(.9)}100%{opacity:0;transform:translate(370px,-230px) rotate(-18deg) scale(.6)}}
@keyframes swallowWingbeat{from{transform:rotate(-15deg) scaleY(.55)}to{transform:rotate(12deg) scaleY(1)}}
@keyframes swallowLetterSway{from{transform:rotate(-7deg)}to{transform:rotate(8deg)}}
@media(max-width:600px){.cart-swallow{width:180px;height:130px}}
@media(prefers-reduced-motion:reduce){.is-cart-sending .cart-swallow{display:none;animation:none}.is-cart-sending .swallow-wing,.is-cart-sending .swallow-letter{animation:none}}
@media(max-width:600px){.is-checking-out .catalogue-header>div:first-child{flex-basis:auto}.is-checking-out .catalogue-header>form{margin-left:auto}}

.cart-scroll-packing{position:absolute;width:240px;height:170px;opacity:0;overflow:visible}
.is-cart-sending .cart-scroll-packing{animation:scrollPackingStage 2.2s .35s linear both}
.packing-paper{transform-origin:105px 65px}
.is-cart-sending .packing-paper{animation:letterRollUp .85s .55s ease-in-out both}
.packing-scroll{opacity:0;transform-origin:113px 70px}
.is-cart-sending .packing-scroll{animation:scrollIntoTube .95s 1.15s ease-in-out both}
.packing-tube{opacity:0}
.is-cart-sending .packing-tube{animation:packingTubeAppear 1.4s .8s ease both}
.is-cart-sending .cart-swallow{animation:cartSwallowFlight 1.85s 2.05s cubic-bezier(.4,0,.25,1) both}
.is-cart-sending .swallow-wing{animation-delay:2.05s}
.is-cart-sending .swallow-letter{animation-delay:2.05s}
.is-cart-sending .support-flight-trail{animation-delay:2.55s}
.is-cart-ready .cart-scroll-packing{display:none}
@keyframes scrollPackingStage{0%{opacity:0;transform:translate(-20px,12px)}12%,78%{opacity:1;transform:translate(-20px,12px)}100%{opacity:0;transform:translate(16px,25px) scale(.75)}}
@keyframes letterRollUp{0%,20%{opacity:1;transform:scaleX(1)}70%{opacity:1;transform:scaleX(.24)}100%{opacity:0;transform:scaleX(.05)}}
@keyframes scrollIntoTube{0%{opacity:0;transform:translate(0,0) rotate(0)}15%,35%{opacity:1;transform:translate(0,0) rotate(90deg)}80%{opacity:1;transform:translate(52px,11px) rotate(90deg) scaleY(.6)}100%{opacity:0;transform:translate(70px,11px) rotate(90deg) scaleY(.3)}}
@keyframes packingTubeAppear{0%{opacity:0;transform:translateX(20px)}20%,100%{opacity:1;transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.is-cart-sending .cart-scroll-packing{display:none;animation:none}.is-cart-sending .packing-paper,.is-cart-sending .packing-scroll,.is-cart-sending .packing-tube{animation:none}}

/* Keep close controls circular despite the shared touch-button minimum height. */
.barcode-card-close,.catalogue-close{display:grid;place-items:center;box-sizing:border-box;flex:0 0 44px;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px;aspect-ratio:1;padding:0;border-radius:50%;line-height:1}
.barcode-card-close svg,.catalogue-close svg{width:22px;height:22px;display:block;pointer-events:none}
