1<!doctype html> 2<html class="no-js" lang="en"> 3 <head> 4
4<script src="https://analytics.ahrefs.com/analytics.js" data-key="TE29mseo56VJhI5Ff3XLIw" async></script>
4 5 <meta charset="utf-8"> 6 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 7 <meta name="viewport" content="width=device-width,initial-scale=1"> 8 <link rel="canonical" href="https://www.serversource.co.uk/pages/contact"> 9 <link rel="icon" type="image/png" href="https://cdn.shopify.com/s/files/1/0587/2150/1393/files/logo-ServerSource-sq.jpg?v=1686233809"><title>Contact ServerSource | Request a Quote or Get Support</title><meta name="description" content="Do you have a quote you&#39;d like beating? A general query or technical enquiry? Feel free to ask over live chat, by calling the team, or sending us an email.">
9<script> 10 (function() { 11 var observer = new MutationObserver(function(mutations) { 12 mutations.forEach(function(mutation) { 13 mutation.addedNodes.forEach(function(node) { 14 if (node.tagName === 'SCRIPT' && node.src && node.src.toLowerCase().indexOf('currency-converter-plus') !== -1) { 15 node.parentNode.removeChild(node); 16 } 17 }); 18 }); 19 }); 20 observer.observe(document.documentElement, { childList: true, subtree: true }); 21 })(); 22</script>
22 23
24<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
24<meta name="google-site-verification" content="gnalamQxs6ui4DbdBB40SiMNwyuZ4cdJOZodi2CpR5Q"> 25<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/58721501393/digital_wallets/dialog"> 26<meta id="in-context-paypal-metadata" data-shop-id="58721501393" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="GBP"> 27<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
27<script async="async" src="/checkouts/internal/preloads.js?locale=en-GB"></script>
vendor: 1 bytes, line 27
27
28<script id="shopify-features" type="application/json">{"accessToken":"7ba771a50e49d9753c36535daf57f85f","betas":["rich-media-storefront-analytics"],"domain":"www.serversource.co.uk","predictiveSearch":true,"shopId":58721501393,"locale":"en"}</script>
vendor: 1 bytes, line 28
28
29<script>var Shopify = Shopify || {}; 30Shopify.shop = "serversource.myshopify.com"; 31Shopify.locale = "en"; 32Shopify.currency = {"active":"GBP","rate":"1.0"}; 33Shopify.country = "GB"; 34Shopify.theme = {"name":"search-fix62","id":139383832785,"schema_name":null,"schema_version":null,"theme_store_id":null,"role":"main"}; 35Shopify.theme.handle = "null"; 36Shopify.theme.style = {"id":null,"handle":null}; 37Shopify.cdnHost = "www.serversource.co.uk/cdn"; 38Shopify.routes = Shopify.routes || {}; 39Shopify.routes.root = "/"; 40Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 41Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 42Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 43Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 43
43
44<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 44
44
45<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 45
45
46<script> 47 window.Shopify = window.Shopify || {}; 48 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 49 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 50 window.Shopify.SignInWithShop.eligible = true; 51</script>
vendor: 1 bytes, line 51
51
52<script id="shop-js-analytics" type="application/json">{"pageType":"page"}</script>
vendor: 1 bytes, line 52
52
53<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"></script>
vendor: 1 bytes, line 53
53
54<script type="module"> 55 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 56 57 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 58 59</script>
vendor: 1 bytes, line 59
59
60<script> 61 window.Shopify = window.Shopify || {}; 62 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 63 window.Shopify.featureAssets['shop-js'] = {"avatar":["modules/v2/loader.avatar.en.esm.js"],"checkout-modal":["modules/v2/loader.checkout-modal.en.esm.js"],"init-customer-accounts-sign-up":["modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"],"init-customer-accounts":["modules/v2/loader.init-customer-accounts.en.esm.js"],"init-fed-cm":["modules/v2/loader.init-fed-cm.en.esm.js"],"init-shop-cart-sync":["modules/v2/loader.init-shop-cart-sync.en.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/loader.init-shop-email-lookup-coordinator.en.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/loader.init-shop-for-new-customer-accounts.en.esm.js"],"init-shop-user-recognition":["modules/v2/loader.init-shop-user-recognition.en.esm.js"],"init-windoid":["modules/v2/loader.init-windoid.en.esm.js"],"lead-capture":["modules/v2/loader.lead-capture.en.esm.js"],"listener":["modules/v2/loader.listener.en.esm.js"],"pay-button":["modules/v2/loader.pay-button.en.esm.js"],"payment-terms":["modules/v2/loader.payment-terms.en.esm.js"],"shop-button":["modules/v2/loader.shop-button.en.esm.js"],"shop-cart-sync":["modules/v2/loader.shop-cart-sync.en.esm.js"],"shop-cash-offers":["modules/v2/loader.shop-cash-offers.en.esm.js"],"shop-follow-button":["modules/v2/loader.shop-follow-button.en.esm.js"],"shop-login-button":["modules/v2/loader.shop-login-button.en.esm.js"],"shop-login":["modules/v2/loader.shop-login.en.esm.js"],"shop-toast-manager":["modules/v2/loader.shop-toast-manager.en.esm.js"],"shop-user-recognition":["modules/v2/loader.shop-user-recognition.en.esm.js"]}; 64</script>
vendor: 1 bytes, line 64
64
65<script>(function() { 66 var isLoaded = false; 67 function asyncLoad() { 68 if (isLoaded) return; 69 isLoaded = true; 70 var urls = ["https:\/\/cdn.shopify.com\/s\/files\/1\/0587\/2150\/1393\/t\/4\/assets\/cws_quotation_init.js?v=1646395069\u0026shop=serversource.myshopify.com","https:\/\/s3.amazonaws.com\/pixelpop\/usercontent\/scripts\/7babeea0-cf50-4fc6-b7e1-120bc1e25b2d\/pixelpop.js?shop=serversource.myshopify.com"]; 71 for (var i = 0; i < urls.length; i++) { 72 var s = document.createElement('script'); 73 s.type = 'text/javascript'; 74 s.async = true; 75 s.src = urls[i]; 76 var x = document.getElementsByTagName('script')[0]; 77 x.parentNode.insertBefore(s, x); 78 } 79 }; 80 if(window.attachEvent) { 81 window.attachEvent('onload', asyncLoad); 82 } else { 83 window.addEventListener('load', asyncLoad, false); 84 } 85})();</script>
vendor: 1 bytes, line 85
85
86<script id="__st">var __st={"a":58721501393,"offset":3600,"reqid":"b5a8d03a-8a01-4235-b5b1-88c066db231e-1791451926","pageurl":"www.serversource.co.uk\/pages\/contact","s":"pages-81727652049","u":"f4da61d3e490","p":"page","rtyp":"page","rid":81727652049};</script>
vendor: 1 bytes, line 86
86
87<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 87
87
88<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.3.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();</script>
vendor: 1 bytes, line 88
88
89<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//www.serversource.co.uk/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 89
89
90<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//www.serversource.co.uk/cdn/shopifycloud/storefront/assets/storefront/autosizes-84416378.js";(document.head || document.documentElement).appendChild(autosizesScript);}window.ShopifyAnalytics = window.ShopifyAnalytics || {};window.ShopifyAnalytics.performance = window.ShopifyAnalytics.performance || {};(function () {var LONG_FRAME_THRESHOLD = 50;var longAnimationFrames = [];var activeRafId = null;function collectLongFrames() {var previousTime = null;function rafMonitor(now) {if (activeRafId === null) {return;}var delta = now - previousTime;if (delta > LONG_FRAME_THRESHOLD) {longAnimationFrames.push({startTime: previousTime,endTime: now,});}previousTime = now;activeRafId = requestAnimationFrame(rafMonitor);}previousTime = performance.now();activeRafId = requestAnimationFrame(rafMonitor);}if (!window.PerformanceObserver?.supportedEntryTypes?.includes('long-animation-frame')) {collectLongFrames();var timeoutId = setTimeout(function () {cancelAnimationFrame(activeRafId);}, 10000);window.ShopifyAnalytics.performance.getLongAnimationFrames = function (stopCollection) {if (stopCollection === undefined) {stopCollection = false;}if (stopCollection) {clearTimeout(timeoutId);cancelAnimationFrame(activeRafId);}return longAnimationFrames;};}})();})();</script>
90<script id="shopify-origin-trials" async="async" integrity="sha256-qJbe/jEZBHtr5W/BlA2cKAz3vkXu6vJQyLjgvgCC86g=" src="//cdn.shopify.com/shopifycloud/storefront/assets/storefront/origin_trials-318ab40a.js" crossorigin="anonymous" onload="window.__shopifyOriginTrialsDone = true" onerror="window.__shopifyOriginTrialsDone = true"></script>
vendor: 1 bytes, line 90
90
91<script> 92 window.Shopify = window.Shopify || {}; 93 window.Shopify.MCP = window.Shopify.MCP || {}; 94 window.Shopify.MCP.enabled = true; 95 window.Shopify.MCP.shop = "serversource.myshopify.com"; 96 window.Shopify.MCP.mcpEndpoint = "https:\/\/www.serversource.co.uk\/api\/mcp"; 97 window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n - What is your return policy?\n - What is your shipping policy?\n - What is your phone number?\n - What are your hours of operation?\"\nSet policy_types to also get the store's written policies (full text and URL).\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."},"policy_types":{"type":"array","items":{"type":"string","enum":["refund","shipping","privacy","terms_of_service","terms_of_sale","subscription","legal_notice","contact"]},"description":"Policy kinds to fetch, chosen from the user's question â e.g. [\"refund\"] for returns\/exchanges\/damaged items, [\"contact\"] for phone\/hours\/address. Include every kind the question touches. Omit it to get only FAQ answers."}},"required":["query"]}}]; 98</script>
vendor: 1 bytes, line 98
98
99<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/www.serversource.co.uk\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 100</script>
vendor: 1 bytes, line 100
100
101<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://www.serversource.co.uk/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 102</script>
vendor: 1 bytes, line 102
102
103<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 104 function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent); 105</script>
vendor: 1 bytes, line 105
105
106<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}})); 107</script>
107 108<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://www.serversource.co.uk/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"> 109<style id="shopify-accelerated-checkout-cart"> 110 #shopify-buyer-consent { 111 margin-top: 1em; 112 display: inline-block; 113 width: 100%; 114} 115 116#shopify-buyer-consent.hidden { 117 display: none; 118} 119 120#shopify-subscription-policy-button { 121 background: none; 122 border: none; 123 padding: 0; 124 text-decoration: underline; 125 font-size: inherit; 126 cursor: pointer; 127} 128 129#shopify-subscription-policy-button::before { 130 box-shadow: none; 131} 132 133 </style> 134
135<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
135 136
136<script> 137 window.hsConversationsSettings = { loadImmediately: true }; 138 </script>
138 139
139<script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/20213111.js"></script>
139<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> 140<style> 141html, body { 142 margin: 0 !important; 143 padding: 0 !important; 144 width: 100% !important; 145 overflow-x: hidden; 146} 147body { font-family: 'Poppins', sans-serif; } 148header, header *, 149footer, footer *, 150.ss-modern-header-wrap, .ss-modern-header-wrap * { 151 box-sizing: border-box; 152} 153header, footer { display: block !important; visibility: visible !important; } 154/* Static Website pages â header/top-bar chrome matches ServerSource theme (no Bootstrap) */ 155 156html.ss-static-html { 157 scroll-behavior: smooth; 158 margin: 0; 159 padding: 0; 160 font-size: 18px; 161 -webkit-text-size-adjust: 100%; 162} 163 164body.ss-static-page { 165 margin: 0 !important; 166 padding: 0 !important; 167 font-family: 'Poppins', sans-serif !important; 168 background: #f4f8fb !important; 169 color: #1a2332 !important; 170 line-height: 1.6; 171} 172 173.ss-modern-header-wrap { 174 position: sticky; 175 top: 0; 176 z-index: 1000; 177} 178 179/* Hide legacy chrome fragments if CSS remains in page head */ 180body.ss-static-page .topbar, 181body.ss-static-page .menu-section, 182body.ss-static-page .ss-menubar, 183body.ss-static-page .ss-pb-wrap { 184 display: none !important; 185} 186/* Nav size lock â pixel-matched to shopify-static-nav-bar.html @ 18px root (theme ss-modern-fixes.css). 187 MUST load after page CSS. Do not use 16px â live theme uses html.ss-modern-html { font-size: 18px }. */ 188html, 189html.ss-modern-html, 190html.ss-static-html { 191 font-size: 18px !important; 192 -webkit-text-size-adjust: 100% !important; 193} 194 195.ss-modern-header-wrap { 196 font-size: 18px !important; 197 -webkit-text-size-adjust: 100% !important; 198 width: 100% !important; 199 max-width: none !important; 200 margin: 0 !important; 201 padding: 0 !important; 202} 203 204.ss-modern-header-wrap .top-bar { 205 display: block !important; 206 padding: 0 !important; 207 margin: 0 !important; 208 background: #eef2f6 !important; 209 border-bottom: 1px solid #e2e8f0 !important; 210 overflow: visible !important; 211} 212 213.ss-modern-header-wrap .top-bar-inner { 214 display: flex !important; 215 flex-direction: row !important; 216 align-items: center !important; 217 justify-content: space-between !important; 218 flex-wrap: wrap !important; 219 gap: 13.5px 22.5px !important; 220 padding: 8.1px 0 !important; 221 width: min(100% - 36px, 1280px) !important; 222 max-width: 1280px !important; 223 margin-inline: auto !important; 224 font-family: 'Poppins', sans-serif !important; 225 font-size: 14.625px !important; 226 font-weight: 500 !important; 227 line-height: 1.6 !important; 228 min-height: 0 !important; 229} 230 231.ss-modern-header-wrap .top-bar-contact, 232.ss-modern-header-wrap .top-bar-right { 233 display: flex !important; 234 align-items: center !important; 235 flex-wrap: wrap !important; 236 gap: 9px 15.3px !important; 237} 238 239.ss-modern-header-wrap .top-bar a { 240 color: #1f485e !important; 241 text-decoration: none !important; 242 font-family: 'Poppins', sans-serif !important; 243 font-size: 14.625px !important; 244 font-weight: 500 !important; 245 line-height: 1.6 !important; 246} 247 248.ss-modern-header-wrap .top-bar-sep { 249 color: #b8c5d0 !important; 250 line-height: 1.6 !important; 251} 252 253.ss-modern-header-wrap .top-bar-social { 254 display: inline-flex !important; 255 align-items: center !important; 256 gap: 6.3px !important; 257} 258 259.ss-modern-header-wrap .top-bar-social a { 260 display: inline-flex !important; 261 align-items: center !important; 262 justify-content: center !important; 263 width: 31.5px !important; 264 height: 31.5px !important; 265 min-width: 31.5px !important; 266 min-height: 31.5px !important; 267 padding: 0 !important; 268 margin: 0 !important; 269 border: none !important; 270 line-height: 1 !important; 271} 272 273.ss-modern-header-wrap .top-bar-social svg { 274 width: 16.875px !important; 275 height: 16.875px !important; 276 max-width: 16.875px !important; 277 max-height: 16.875px !important; 278 fill: currentColor !important; 279} 280 281.ss-modern-header-wrap .top-bar-note { 282 font-size: 13.5px !important; 283 line-height: 1.6 !important; 284} 285 286.ss-modern-header-wrap .wrap { 287 width: min(100% - 36px, 1280px) !important; 288 max-width: 1280px !important; 289 margin-inline: auto !important; 290} 291 292.ss-modern-header-wrap .shop-nav { 293 background: #1f485e !important; 294 color: #fff !important; 295 border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important; 296} 297 298.ss-modern-header-wrap .shop-nav-row { 299 display: grid !important; 300 grid-template-columns: auto 1fr auto !important; 301 align-items: center !important; 302 gap: 13.5px 18px !important; 303 padding: 9.9px 18px !important; 304 width: min(100% - 18px, 1280px) !important; 305 max-width: 1280px !important; 306 margin: 0 auto !important; 307} 308 309.ss-modern-header-wrap .shop-nav-logo { 310 display: flex !important; 311 align-items: center !important; 312 gap: 9.9px !important; 313 flex-shrink: 0 !important; 314} 315 316.ss-modern-header-wrap .shop-nav-logo img { 317 height: 36px !important; 318 width: 36px !important; 319 min-height: 36px !important; 320 min-width: 36px !important; 321 object-fit: cover !important; 322 border-radius: 6px !important; 323} 324 325.ss-modern-header-wrap .shop-nav-logo-copy { 326 display: flex !important; 327 flex-direction: column !important; 328 gap: 0.9px !important; 329 line-height: 1.1 !important; 330} 331 332.ss-modern-header-wrap .shop-nav-logo-text { 333 font-size: 18.9px !important; 334 font-weight: 700 !important; 335 line-height: 1.1 !important; 336 letter-spacing: -0.01em !important; 337 white-space: nowrap !important; 338} 339 340.ss-modern-header-wrap .shop-nav-logo-est { 341 font-size: 13.5px !important; 342 font-weight: 700 !important; 343 line-height: 1.1 !important; 344} 345 346.ss-modern-header-wrap .shop-nav-links { 347 display: flex !important; 348 align-items: center !important; 349 justify-content: center !important; 350 flex-wrap: nowrap !important; 351 gap: 3.6px 5.4px !important; 352 min-width: 0 !important; 353 overflow: visible !important; 354} 355 356.ss-modern-header-wrap .shop-nav-links > a, 357.ss-modern-header-wrap .shop-nav-links > .shop-nav-drop { 358 flex-shrink: 0 !important; 359} 360 361.ss-modern-header-wrap .shop-nav-link, 362.ss-modern-header-wrap button.shop-nav-link, 363.ss-modern-header-wrap a.shop-nav-link:not(.shop-nav-link--store) { 364 display: inline-flex !important; 365 align-items: center !important; 366 justify-content: center !important; 367 gap: 5.4px !important; 368 height: 38.25px !important; 369 min-height: 38.25px !important; 370 max-height: none !important; 371 padding: 0 9.9px !important; 372 font-family: 'Poppins', sans-serif !important; 373 font-size: 15.12px !important; 374 font-weight: 600 !important; 375 line-height: 1 !important; 376 color: #fff !important; 377 white-space: nowrap !important; 378 border: none !important; 379 border-bottom: 3px solid rgba(255, 255, 255, 0.28) !important; 380 border-radius: 4px !important; 381 background: transparent !important; 382 background-image: none !important; 383 box-shadow: none !important; 384 text-decoration: none !important; 385 text-transform: none !important; 386 letter-spacing: 0.01em !important; 387 margin: 0 !important; 388 flex-shrink: 0 !important; 389 box-sizing: border-box !important; 390 -webkit-appearance: none !important; 391 appearance: none !important; 392 cursor: pointer !important; 393} 394 395.ss-modern-header-wrap a.shop-nav-link.shop-nav-link--store { 396 display: inline-flex !important; 397 align-items: center !important; 398 justify-content: center !important; 399 gap: 5.4px !important; 400 height: 38.25px !important; 401 min-height: 38.25px !important; 402 padding: 0 9.9px !important; 403 font-family: 'Poppins', sans-serif !important; 404 font-size: 15.12px !important; 405 font-weight: 600 !important; 406 line-height: 1 !important; 407 color: #fff !important; 408 white-space: nowrap !important; 409 border: none !important; 410 border-bottom: 3px solid transparent !important; 411 border-radius: 6.75px !important; 412 background: #00a8e1 !important; 413 background-image: none !important; 414 box-shadow: 0 2px 10px rgba(0, 168, 225, 0.35) !important; 415 text-decoration: none !important; 416 text-transform: none !important; 417 letter-spacing: 0.01em !important; 418 margin: 0 !important; 419 flex-shrink: 0 !important; 420} 421 422.ss-modern-header-wrap .shop-nav-link:not(.shop-nav-link--store):hover, 423.ss-modern-header-wrap .shop-nav-link:not(.shop-nav-link--store):focus-visible, 424.ss-modern-header-wrap .shop-nav-drop:hover > .shop-nav-link, 425.ss-modern-header-wrap .shop-nav-drop.is-open > .shop-nav-link { 426 background: rgba(255, 255, 255, 0.15) !important; 427 border-bottom-color: #00a8e1 !important; 428 color: #fff !important; 429} 430 431.ss-modern-header-wrap a.shop-nav-link.shop-nav-link--store:hover, 432.ss-modern-header-wrap a.shop-nav-link.shop-nav-link--store:focus-visible { 433 background: #0090c4 !important; 434 border-bottom-color: transparent !important; 435 color: #fff !important; 436} 437 438.ss-modern-header-wrap .ss-nav-search-toggle { 439 display: inline-flex !important; 440 align-items: center !important; 441 justify-content: center !important; 442 width: 38.25px !important; 443 height: 38.25px !important; 444 min-width: 38.25px !important; 445 min-height: 38.25px !important; 446 padding: 0 !important; 447} 448 449.ss-modern-header-wrap .nav-toggle { 450 font-family: 'Poppins', sans-serif !important; 451 font-size: 15.75px !important; 452 font-weight: 600 !important; 453 line-height: 1 !important; 454 padding: 9px 13.5px !important; 455} 456 457.ss-modern-header-wrap svg:not(.shop-nav-chevron) { 458 width: 16px !important; 459 height: 16px !important; 460 max-width: 24px !important; 461 max-height: 24px !important; 462 flex-shrink: 0 !important; 463} 464 465.ss-modern-header-wrap .shop-nav-link .shop-nav-chevron { 466 width: 9px !important; 467 height: 9px !important; 468 min-width: 9px !important; 469 min-height: 9px !important; 470 fill: currentColor !important; 471} 472 473@media (min-width: 1101px) { 474 .ss-modern-header-wrap .shop-nav-links > a, 475 .ss-modern-header-wrap .shop-nav-links > .shop-nav-drop { 476 display: inline-flex !important; 477 visibility: visible !important; 478 } 479} 480 481@media (min-width: 641px) { 482 .ss-modern-header-wrap .top-bar-inner { 483 flex-direction: row !important;
484 align-items: center !important; 485 } 486} 487 488@media (max-width: 640px) { 489 .ss-modern-header-wrap .top-bar-inner { 490 flex-direction: column !important; 491 align-items: flex-start !important; 492 padding: 9px 0 !important; 493 } 494 495 .ss-modern-header-wrap .top-bar-right { 496 width: 100% !important; 497 justify-content: space-between !important; 498 } 499} 500/* Contact page â Bytestock-inspired layout, ServerSource branding */ 501.ss-contact-page { 502 --ss-icon-bg: #e3f2f9; 503 --ss-icon-color: #1f485e; 504 --ss-primary: #1f485e; 505 --ss-accent: #1879a4; 506 --ss-highlight: #00a8e1; 507 --ss-muted: #64748b; 508 --ss-border: #e2e8f0; 509 --ss-tint: #f4f8fb; 510 display: block; 511 width: 100%; 512 margin: 0; 513 padding: 0; 514 background: #fff; 515 font-family: 'Poppins', sans-serif; 516 color: #1a2332; 517 line-height: 1.65; 518} 519 520.ss-contact-page__content { 521 width: min(100% - 2.5rem, 1100px); 522 margin: 0 auto; 523} 524 525.ss-contact-page__content--narrow { 526 width: min(100% - 2.5rem, 720px); 527} 528 529.ss-contact-page__content--wide { 530 width: min(100% - 2rem, 1400px); 531} 532 533.ss-contact-page__content--actions { 534 width: min(100% - 2rem, 1180px); 535} 536 537/* Blue hero banner */ 538.ss-contact-page__hero { 539 background: linear-gradient(135deg, #1f485e 0%, #1879a4 55%, #035e7f 100%); 540 color: #fff; 541 padding: 3rem 1.25rem; 542 text-align: center; 543} 544 545.ss-contact-page__hero-inner { 546 max-width: 44rem; 547 margin: 0 auto; 548} 549 550.ss-contact-page__hero h1 { 551 font-size: clamp(2rem, 4vw, 2.75rem); 552 font-weight: 700; 553 color: #fff; 554 margin: 0 0 0.5rem; 555 letter-spacing: -0.02em; 556} 557 558.ss-contact-page__hero-lead { 559 margin: 0; 560 font-size: clamp(1.05rem, 2vw, 1.25rem); 561 color: rgba(255, 255, 255, 0.92); 562 line-height: 1.6; 563} 564 565/* Intro copy below hero */ 566.ss-contact-page__top { 567 padding: 2rem 1.25rem 0; 568 text-align: center; 569 background: #fff; 570} 571 572.ss-contact-page__top-copy { 573 max-width: 42rem; 574 margin: 0 auto; 575 font-size: 1rem; 576 color: #475569; 577 line-height: 1.75; 578} 579 580/* Action cards â Call + Email */ 581.ss-contact-page__actions { 582 padding: 2rem 1.25rem 2.5rem; 583 background: #fff; 584} 585 586.ss-contact-page__action-grid { 587 display: grid; 588 grid-template-columns: repeat(3, minmax(0, 1fr)); 589 gap: 1.25rem; 590 align-items: stretch; 591} 592 593.ss-contact-page__action-card { 594 background: var(--ss-tint); 595 border: 1px solid var(--ss-border); 596 border-radius: 12px; 597 padding: 2rem 1.35rem 1.75rem; 598 text-align: center; 599 display: flex; 600 flex-direction: column; 601 align-items: center; 602 height: 100%; 603 min-height: 100%; 604} 605 606.ss-contact-page__action-icon { 607 width: 3.5rem; 608 height: 3.5rem; 609 border-radius: 50%; 610 background: var(--ss-icon-bg); 611 color: var(--ss-icon-color); 612 display: flex; 613 align-items: center; 614 justify-content: center; 615 font-size: 1.25rem; 616 margin: 0 auto 1.15rem; 617 flex-shrink: 0; 618} 619 620.ss-contact-page__action-card h2 { 621 font-size: 1.35rem; 622 font-weight: 700; 623 color: var(--ss-primary); 624 margin: 0 0 0.65rem; 625 width: 100%; 626} 627 628.ss-contact-page__action-card p { 629 font-size: 0.9375rem; 630 color: var(--ss-muted); 631 margin: 0 0 1.35rem; 632 line-height: 1.65; 633 flex: 1 1 auto; 634 min-height: 4.75rem; 635 width: 100%; 636} 637 638.ss-contact-page__nowrap { 639 white-space: nowrap; 640} 641 642.ss-contact-page__action-card .ss-contact-page__btn { 643 width: 100%; 644 min-height: 2.875rem; 645 padding: 0.7rem 1rem; 646 display: flex; 647 align-items: center; 648 justify-content: center; 649 text-align: center; 650 line-height: 1.35; 651 font-size: 0.8125rem; 652 margin-top: auto; 653 box-sizing: border-box; 654} 655 656.ss-contact-page__btn { 657 display: inline-flex; 658 align-items: center; 659 justify-content: center; 660 padding: 0.75rem 1.75rem; 661 border-radius: 6px; 662 background: var(--ss-accent); 663 color: #fff; 664 font-family: 'Poppins', sans-serif; 665 font-size: 0.9375rem; 666 font-weight: 600; 667 text-decoration: none; 668 border: none; 669 cursor: pointer; 670 transition: background 0.15s; 671 box-shadow: none; 672} 673 674.ss-contact-page__btn:hover { 675 background: #146a8f; 676 color: #fff; 677} 678 679/* Price guarantee band */ 680.ss-contact-page__guarantee-band { 681 background: #1879a4; 682 padding: 1.25rem 1.25rem; 683 text-align: center; 684} 685 686.ss-contact-page__guarantee-band p { 687 margin: 0; 688 max-width: 52rem; 689 margin-inline: auto; 690 font-size: clamp(1rem, 2vw, 1.0625rem); 691 color: #fff; 692 line-height: 1.5; 693} 694 695.ss-contact-page__guarantee-band strong { 696 font-weight: 700; 697} 698 699/* Form + addresses side by side */ 700.ss-contact-page__form-section { 701 padding: 3rem 1.25rem 3.5rem; 702 background: var(--ss-tint); 703} 704 705.ss-contact-page__form-split { 706 display: grid; 707 grid-template-columns: 1fr 1fr; 708 gap: 1.75rem; 709 align-items: stretch; 710} 711 712.ss-contact-page__form-head { 713 text-align: left; 714 margin-bottom: 1.5rem; 715} 716 717.ss-contact-page__side-info { 718 display: flex; 719 flex-direction: column; 720 gap: 1.25rem; 721 height: 100%; 722} 723 724.ss-contact-page__loc-card { 725 flex: 1; 726} 727 728.ss-contact-page__loc-card, 729.ss-contact-page__hours-card { 730 background: #fff; 731 border: 1px solid var(--ss-border); 732 border-radius: 12px; 733 padding: 1.5rem 1.5rem; 734 box-shadow: 0 4px 16px rgba(15, 45, 61, 0.06); 735} 736 737.ss-contact-page__loc-card h3, 738.ss-contact-page__hours-card h3 { 739 display: flex; 740 align-items: center; 741 gap: 0.65rem; 742 font-size: 1.0625rem; 743 font-weight: 600; 744 color: var(--ss-primary); 745 margin: 0 0 1rem; 746} 747 748.ss-contact-page__address-block { 749 margin-bottom: 1.25rem; 750} 751 752.ss-contact-page__address-block:last-child { 753 margin-bottom: 0; 754} 755 756.ss-contact-page__address-block h4 { 757 font-size: 0.8125rem; 758 font-weight: 600; 759 text-transform: uppercase; 760 letter-spacing: 0.04em; 761 color: var(--ss-muted); 762 margin: 0 0 0.45rem; 763} 764 765.ss-contact-page__hours-text { 766 margin: 0; 767 font-size: 0.9375rem; 768 line-height: 1.75; 769 color: #475569; 770} 771 772.ss-contact-page__loc-icon { 773 width: 2.25rem; 774 height: 2.25rem; 775 border-radius: 50%; 776 background: var(--ss-icon-bg); 777 color: var(--ss-icon-color); 778 display: inline-flex; 779 align-items: center; 780 justify-content: center; 781 font-size: 0.875rem; 782 flex-shrink: 0; 783} 784 785.ss-contact-page__address { 786 font-style: normal; 787 font-size: 0.9375rem; 788 line-height: 1.85; 789 color: #475569; 790 margin: 0; 791} 792 793.ss-contact-page__form-head h2 { 794 font-size: clamp(1.5rem, 3vw, 2rem); 795 font-weight: 700;
796 color: var(--ss-primary); 797 margin: 0 0 0.5rem; 798} 799 800.ss-contact-page__form-head p { 801 margin: 0; 802 font-size: 1rem; 803 color: var(--ss-muted); 804} 805 806.ss-contact-page__form-panel { 807 background: #fff; 808 border: 1px solid var(--ss-border); 809 border-radius: 12px; 810 padding: 2rem 1.75rem; 811 box-shadow: 0 4px 20px rgba(15, 45, 61, 0.06); 812 height: 100%; 813 box-sizing: border-box; 814} 815 816.ss-contact-page__field { 817 margin-bottom: 1.1rem; 818} 819 820.ss-contact-page__field label { 821 display: block; 822 margin-bottom: 0.4rem; 823 font-size: 0.875rem; 824 font-weight: 500; 825 color: var(--ss-primary); 826} 827 828.ss-contact-page__req { 829 color: #dc2626; 830} 831 832.ss-contact-page__field input, 833.ss-contact-page__field textarea { 834 width: 100%; 835 padding: 0.8rem 1rem; 836 border: 1px solid var(--ss-border); 837 border-radius: 8px; 838 font-family: 'Poppins', sans-serif; 839 font-size: 0.9375rem; 840 color: #1a2332; 841 background: #fff; 842 transition: border-color 0.15s; 843} 844 845.ss-contact-page__field input:focus, 846.ss-contact-page__field textarea:focus { 847 outline: none; 848 border-color: var(--ss-accent); 849} 850 851.ss-contact-page__field textarea { 852 min-height: 9rem; 853 resize: vertical; 854} 855 856.ss-contact-page__submit { 857 display: flex; 858 align-items: center; 859 justify-content: center; 860 width: 100%; 861 padding: 0.9rem 1.5rem; 862 border: none; 863 border-radius: 8px; 864 background: var(--ss-accent); 865 color: #fff; 866 font-family: 'Poppins', sans-serif; 867 font-size: 1rem; 868 font-weight: 600; 869 text-align: center; 870 cursor: pointer; 871 transition: background 0.15s; 872 box-shadow: none; 873} 874 875.ss-contact-page__submit:hover { 876 background: #146a8f; 877} 878 879.ss-contact-page__form-success, 880.ss-contact-page__form-error { 881 padding: 0.85rem 1rem; 882 border-radius: 8px; 883 margin-bottom: 1rem; 884 font-size: 0.9375rem; 885} 886 887.ss-contact-page__form-success { 888 background: #d1fae5; 889 color: #065f46; 890} 891 892.ss-contact-page__form-error { 893 background: #fee2e2; 894 color: #b91c1c; 895} 896 897/* Team section */ 898.ss-contact-page__team-section { 899 padding: 3.5rem 1.25rem 4rem; 900 background: #fff; 901 border-top: 1px solid var(--ss-border); 902} 903 904.ss-contact-page__section-head { 905 text-align: center; 906 max-width: 40rem; 907 margin: 0 auto 2.5rem; 908} 909 910.ss-contact-page__section-head h2 { 911 font-size: clamp(1.65rem, 3vw, 2.15rem); 912 font-weight: 700; 913 color: var(--ss-primary); 914 margin: 0; 915} 916 917.ss-contact-page__team { 918 display: grid; 919 grid-template-columns: repeat(5, minmax(0, 1fr)); 920 gap: 1rem; 921} 922 923.ss-contact-page__team-card { 924 background: var(--ss-tint); 925 border: 1px solid var(--ss-border); 926 border-radius: 12px; 927 padding: 1.5rem 0.85rem; 928 min-width: 0; 929 text-align: center; 930 transition: border-color 0.2s, box-shadow 0.2s; 931} 932 933.ss-contact-page__team-card:hover { 934 border-color: var(--ss-accent); 935 box-shadow: 0 8px 24px rgba(15, 45, 61, 0.08); 936} 937 938.ss-contact-page__avatar { 939 width: 3.25rem; 940 height: 3.25rem; 941 margin: 0 auto 0.85rem; 942 border-radius: 50%; 943 background: var(--ss-icon-bg); 944 color: var(--ss-icon-color); 945 font-size: 0.875rem; 946 font-weight: 700; 947 display: flex; 948 align-items: center; 949 justify-content: center; 950} 951 952.ss-contact-page__team-card h3 { 953 font-size: 1rem; 954 font-weight: 600; 955 color: var(--ss-primary); 956 margin: 0 0 0.2rem; 957} 958 959.ss-contact-page__role { 960 font-size: 0.8125rem; 961 color: var(--ss-muted); 962 margin: 0 0 0.75rem; 963} 964 965.ss-contact-page__team-links { 966 display: flex; 967 flex-direction: column; 968 align-items: center; 969 gap: 0.35rem; 970 width: 100%; 971} 972 973.ss-contact-page__link { 974 display: flex; 975 align-items: center; 976 justify-content: flex-start; 977 gap: 0.45rem; 978 font-size: 0.8125rem; 979 color: #1a2332; 980 text-decoration: none; 981 width: 100%; 982 max-width: 13.5rem; 983 text-align: left; 984} 985 986@media (min-width: 1100px) { 987 .ss-contact-page__team .ss-contact-page__link { 988 white-space: nowrap; 989 font-size: 0.78rem; 990 max-width: 14.5rem; 991 } 992} 993 994.ss-contact-page__link i { 995 color: var(--ss-icon-color); 996 flex-shrink: 0; 997} 998 999.ss-contact-page__link:hover { 1000 color: var(--ss-accent); 1001} 1002 1003/* Link shields */ 1004#main-content.ss-contact-page a.ss-contact-page__link, 1005#main-content.ss-contact-page a.ss-contact-page__btn { 1006 text-transform: none !important; 1007} 1008 1009#main-content.ss-contact-page a.ss-contact-page__link { 1010 background: transparent !important; 1011 border: none !important; 1012} 1013 1014#main-content.ss-contact-page a.ss-contact-page__btn, 1015#main-content.ss-contact-page button.ss-contact-page__btn, 1016#main-content.ss-contact-page .ss-contact-page__submit { 1017 display: inline-flex !important; 1018 align-items: center !important; 1019 justify-content: center !important; 1020 text-align: center !important; 1021 text-transform: none !important; 1022 background: #1879a4 !important; 1023 color: #fff !important; 1024 border: none !important; 1025 box-shadow: none !important; 1026} 1027 1028#main-content.ss-contact-page a.ss-contact-page__btn:hover, 1029#main-content.ss-contact-page button.ss-contact-page__btn:hover, 1030#main-content.ss-contact-page .ss-contact-page__submit:hover {
1031 background: #146a8f !important; 1032 color: #fff !important; 1033} 1034 1035#main-content.ss-contact-page .ss-contact-page__action-card .ss-contact-page__btn { 1036 width: 100% !important; 1037 min-height: 2.875rem !important; 1038} 1039 1040@media (max-width: 900px) { 1041 .ss-contact-page__action-grid, 1042 .ss-contact-page__form-split { 1043 grid-template-columns: 1fr; 1044 } 1045 1046 .ss-contact-page__team { 1047 grid-template-columns: repeat(3, minmax(0, 1fr)); 1048 } 1049} 1050 1051@media (max-width: 600px) { 1052 .ss-contact-page__hero { 1053 padding: 2.5rem 1rem; 1054 } 1055 1056 .ss-contact-page__team { 1057 grid-template-columns: 1fr; 1058 } 1059} 1060 1061 1062/* Shopify theme shields ââ¬â contact page */ 1063#main-content.ss-contact-page, 1064#main-content.ss-contact-page * { box-sizing: border-box; } 1065#main-content.ss-contact-page { 1066 display: block !important; 1067 width: 100% !important; 1068 max-width: none !important; 1069 margin: 0 !important; 1070 padding: 0 !important; 1071 font-family: Poppins, sans-serif !important; 1072 background: #fff !important; 1073 color: #1a2332 !important; 1074 float: none !important; 1075} 1076#main-content.ss-contact-page section, 1077#main-content.ss-contact-page aside { 1078 display: block !important; 1079 float: none !important; 1080 max-width: none !important; 1081} 1082#main-content.ss-contact-page .ss-contact-page__action-card { 1083 display: flex !important; 1084 flex-direction: column !important; 1085 align-items: center !important; 1086 height: 100% !important; 1087 min-height: 100% !important; 1088 text-align: center !important; 1089} 1090#main-content.ss-contact-page .ss-contact-page__action-icon { 1091 display: flex !important; 1092 align-items: center !important; 1093 justify-content: center !important; 1094 margin-left: auto !important; 1095 margin-right: auto !important; 1096} 1097#main-content.ss-contact-page .ss-contact-page__action-card .ss-contact-page__btn { 1098 margin-top: auto !important; 1099} 1100#main-content.ss-contact-page .ss-contact-page__action-grid, 1101#main-content.ss-contact-page .ss-contact-page__form-split, 1102#main-content.ss-contact-page .ss-contact-page__team { 1103 display: grid !important; 1104} 1105#main-content.ss-contact-page .ss-contact-page__action-grid { 1106 grid-template-columns: repeat(3, minmax(0, 1fr)) !important; 1107 align-items: stretch !important; 1108} 1109#main-content.ss-contact-page .ss-contact-page__form-split { 1110 grid-template-columns: 1fr 1fr !important; 1111 align-items: stretch !important; 1112} 1113#main-content.ss-contact-page .ss-contact-page__action-card .ss-contact-page__btn { 1114 width: 100% !important; 1115 min-height: 2.875rem !important; 1116 display: flex !important; 1117 align-items: center !important; 1118 justify-content: center !important; 1119} 1120#main-content.ss-contact-page a.ss-contact-page__btn, 1121#main-content.ss-contact-page button.ss-contact-page__btn, 1122#main-content.ss-contact-page .ss-contact-page__submit { 1123 display: inline-flex !important; 1124 align-items: center !important; 1125 justify-content: center !important; 1126 text-align: center !important; 1127 text-transform: none !important; 1128 background: #1879a4 !important; 1129 color: #fff !important; 1130 border: none !important; 1131 box-shadow: none !important; 1132} 1133 1134#main-content.ss-contact-page a.ss-contact-page__btn:hover, 1135#main-content.ss-contact-page button.ss-contact-page__btn:hover, 1136#main-content.ss-contact-page .ss-contact-page__submit:hover { 1137 background: #146a8f !important; 1138 color: #fff !important; 1139} 1140#main-content.ss-contact-page .ss-contact-page__side-info { 1141 display: flex !important; 1142 flex-direction: column !important; 1143 gap: 1.25rem !important; 1144 height: 100% !important; 1145} 1146#main-content.ss-contact-page .ss-contact-page__team { 1147 grid-template-columns: repeat(5, minmax(0, 1fr)) !important; 1148} 1149#main-content.ss-contact-page .ss-contact-page__hero h1, 1150#main-content.ss-contact-page .ss-contact-page__hero-lead { 1151 color: #fff !important; 1152} 1153#main-content.ss-contact-page a.ss-contact-page__link { 1154 background: transparent !important; 1155 border: none !important; 1156 text-transform: none !important; 1157 box-shadow: none !important; 1158} 1159#main-content.ss-contact-page .ss-contact-page__field input, 1160#main-content.ss-contact-page .ss-contact-page__field textarea { 1161 width: 100% !important; 1162 font-family: Poppins, sans-serif !important; 1163} 1164#main-content.ss-contact-page .ss-contact-page__submit { 1165 display: flex !important; 1166 align-items: center !important; 1167 justify-content: center !important; 1168 width: 100% !important; 1169 text-align: center !important; 1170 text-transform: none !important; 1171 background: #1879a4 !important; 1172 color: #fff !important; 1173 box-shadow: none !important; 1174} 1175@media (max-width: 900px) { 1176 #main-content.ss-contact-page .ss-contact-page__action-grid, 1177 #main-content.ss-contact-page .ss-contact-page__form-split { 1178 grid-template-columns: 1fr !important; 1179 } 1180 #main-content.ss-contact-page .ss-contact-page__team { 1181 grid-template-columns: repeat(3, minmax(0, 1fr)) !important; 1182 } 1183} 1184@media (max-width: 600px) { 1185 #main-content.ss-contact-page .ss-contact-page__team { 1186 grid-template-columns: 1fr !important; 1187 } 1188} 1189</style> 1190<style> 1191 1192/* SS Modern Footer */ 1193#ssStaticFooterRoot, #ssStaticFooterRoot footer.ss-modern-footer { 1194 --ss-primary: #1f485e; 1195 --ss-accent: #1879a4; 1196 --ss-dark: #035e7f; 1197 --ss-highlight: #00a8e1; 1198 --ss-max: 1280px; 1199 font-family: 'Poppins', sans-serif; 1200 line-height: 1.6; 1201 } 1202 #ssStaticFooterRoot *, #ssStaticFooterRoot *::before, #ssStaticFooterRoot *::after { box-sizing: border-box; } 1203 #ssStaticFooterRoot a { color: inherit; text-decoration: none; } 1204 #ssStaticFooterRoot img { max-width: 100%; display: block; } 1205 #ssStaticFooterRoot .wrap { width: min(100% - 2rem, var(--ss-max)); margin-inline: auto; } 1206 #ssStaticFooterRoot .visually-hidden { 1207 position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; 1208 overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; 1209 } 1210 1211 #ssStaticFooterRoot footer.ss-modern-footer { 1212 background: var(--ss-primary); color: #fff; padding: 2rem 0 0; 1213 } 1214 #ssStaticFooterRoot .footer-main { padding-bottom: 1.25rem; } 1215 #ssStaticFooterRoot .footer-main-grid { 1216 display: grid; 1217 grid-template-columns: minmax(0, 1fr) minmax(18.5rem, 23.5rem); 1218 gap: 1.75rem 2rem; align-items: start; 1219 } 1220 #ssStaticFooterRoot .footer-brand-block { 1221 margin-bottom: 1.1rem; padding-bottom: 1rem; 1222 border-bottom: 1px solid rgba(255,255,255,.12); 1223 } 1224 #ssStaticFooterRoot .footer-brand-link { 1225 display: inline-flex; align-items: center; gap: .75rem; 1226 color: #fff; margin-bottom: .6rem; 1227 } 1228 #ssStaticFooterRoot .footer-brand-link img { 1229 width: 52px; height: 52px; object-fit: cover; border-radius: 6px; 1230 flex-shrink: 0; background: #fff; 1231 } 1232 #ssStaticFooterRoot .footer-brand-name { 1233 font-size: 1.3125rem; font-weight: 700; letter-spacing: -.01em; line-height: 1.1; 1234 } 1235 #ssStaticFooterRoot .logo-server { color: var(--ss-highlight); }
1236 #ssStaticFooterRoot .logo-source { color: rgba(255,255,255,.72); } 1237 #ssStaticFooterRoot .footer-tagline { 1238 font-size: .875rem; line-height: 1.55; color: rgba(255,255,255,.88); 1239 max-width: 36rem; margin: 0; 1240 } 1241 #ssStaticFooterRoot .footer-nav-columns { 1242 display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); 1243 gap: 1rem 1.75rem; margin-bottom: 1rem; 1244 } 1245 #ssStaticFooterRoot .footer-nav-heading { 1246 font-size: .75rem; font-weight: 700; letter-spacing: .02em; 1247 color: #fff; margin: 0 0 .5rem; 1248 } 1249 #ssStaticFooterRoot .footer-link-list { list-style: none; margin: 0; padding: 0; } 1250 #ssStaticFooterRoot .footer-link-list li { margin: 0 0 .28rem; } 1251 #ssStaticFooterRoot .footer-link-list a { 1252 font-size: .875rem; line-height: 1.5; color: rgba(255,255,255,.88); 1253 } 1254 #ssStaticFooterRoot .footer-link-list a:hover { color: #fff; text-decoration: underline; } 1255 #ssStaticFooterRoot .footer-social { 1256 display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; 1257 } 1258 #ssStaticFooterRoot .footer-social-label { font-size: .8125rem; font-weight: 700; color: #fff; } 1259 #ssStaticFooterRoot .footer-social-links { display: flex; gap: .5rem; } 1260 #ssStaticFooterRoot .footer-social-links a { 1261 display: inline-flex; align-items: center; justify-content: center; 1262 width: 2.25rem; height: 2.25rem; border-radius: 50%; 1263 background: rgba(255,255,255,.12); color: #fff; 1264 } 1265 #ssStaticFooterRoot .footer-social-links svg { width: 1rem; height: 1rem; fill: currentColor; } 1266 #ssStaticFooterRoot .footer-panel { 1267 background: rgba(255,255,255,.97); color: var(--ss-primary); 1268 border-radius: 8px; padding: .85rem 1rem; 1269 box-shadow: 0 8px 20px rgba(0,0,0,.1); font-size: .8125rem; 1270 } 1271 #ssStaticFooterRoot .footer-panel-block { 1272 padding-bottom: .7rem; margin-bottom: .7rem; 1273 border-bottom: 1px solid rgba(31,72,94,.1); 1274 } 1275 #ssStaticFooterRoot .footer-panel-block:last-child { 1276 padding-bottom: 0; margin-bottom: 0; border-bottom: none; 1277 } 1278 #ssStaticFooterRoot .footer-panel-heading { font-size: .75rem; font-weight: 700; margin: 0 0 .4rem; } 1279 #ssStaticFooterRoot .footer-panel-address { 1280 font-style: normal; font-size: .75rem; line-height: 1.45; 1281 color: #3d5566; margin: 0 0 .35rem; 1282 } 1283 #ssStaticFooterRoot .footer-panel-map { 1284 display: inline-block; margin: 0 0 .5rem; 1285 font-size: .75rem; color: var(--ss-accent); 1286 } 1287 #ssStaticFooterRoot .footer-panel-map:hover { text-decoration: underline; } 1288 #ssStaticFooterRoot .footer-panel-quick { 1289 margin: 0; font-size: .7rem; font-weight: 600; 1290 } 1291 #ssStaticFooterRoot .footer-panel-quick a { color: var(--ss-accent); } 1292 #ssStaticFooterRoot .footer-panel-sep { color: #9ab0be; margin: 0 .25rem; } 1293 #ssStaticFooterRoot .footer-panel-note { 1294 margin: .45rem 0 0; font-size: .625rem; color: #6b7c8a; 1295 } 1296 #ssStaticFooterRoot .footer-panel-note a { color: var(--ss-accent); } 1297 #ssStaticFooterRoot .footer-signup-native { 1298 display: flex; flex-direction: row; flex-wrap: nowrap; 1299 align-items: stretch; gap: .5rem; width: 100%; 1300 } 1301 #ssStaticFooterRoot .footer-signup-native__email { 1302 flex: 1 1 auto; min-width: 0; padding: .65rem .85rem; 1303 border: 1px solid #c5d4de; border-radius: 6px; 1304 background: #fff; color: #1a2332; 1305 font: 400 .875rem 'Poppins', sans-serif; 1306 } 1307 #ssStaticFooterRoot .footer-signup-native__btn { 1308 flex: 0 0 auto; padding: .65rem 1.1rem; 1309 border: none; border-radius: 6px; 1310 background: var(--ss-primary); color: #fff; 1311 font: 600 .8125rem 'Poppins', sans-serif; 1312 cursor: pointer; min-height: 2.5rem; white-space: nowrap; 1313 } 1314 #ssStaticFooterRoot .footer-signup-hubspot-mount, 1315 #ssStaticFooterRoot #ssStaticFooterHubspotForm { 1316 position: absolute; width: 1px; height: 1px; 1317 margin: -1px; overflow: hidden; clip: rect(0,0,0,0); 1318 visibility: hidden; opacity: 0; pointer-events: none; 1319 } 1320 #ssStaticFooterRoot .footer-signup-success { 1321 margin-top: .65rem; font-size: .8125rem; font-weight: 600; 1322 color: #1f5c38; padding: .5rem .65rem; background: #e8f5ec; border-radius: 6px; 1323 } 1324 #ssStaticFooterRoot .footer-trust { 1325 padding: .9rem 0 1.25rem; 1326 border-top: 1px solid rgba(255,255,255,.12); 1327 } 1328 #ssStaticFooterRoot .footer-trust-inner { 1329 display: flex; flex-wrap: wrap;
1330 align-items: center; justify-content: space-between; 1331 gap: .75rem 1.5rem; 1332 } 1333 #ssStaticFooterRoot .footer-trust-logo { 1334 display: block; height: 104px; width: auto; 1335 max-width: min(100%, 520px); object-fit: contain; object-position: left center; 1336 } 1337 #ssStaticFooterRoot .footer-trust-legal { 1338 margin: 0; font-size: .6875rem; line-height: 1.45; 1339 color: rgba(255,255,255,.88); text-align: right; max-width: 28rem; 1340 } 1341 1342 @media (max-width: 1100px) { 1343 #ssStaticFooterRoot .footer-main-grid { grid-template-columns: 1fr; } 1344 #ssStaticFooterRoot .footer-panel { max-width: 23.5rem; } 1345 #ssStaticFooterRoot .footer-trust-legal { text-align: left; max-width: none; } 1346 } 1347 @media (max-width: 768px) { 1348 #ssStaticFooterRoot .footer-nav-columns { grid-template-columns: 1fr; } 1349 #ssStaticFooterRoot .footer-panel { max-width: none; } 1350 #ssStaticFooterRoot .footer-trust-inner { flex-direction: column; align-items: flex-start; } 1351 } 1352 1353/* SS Page Theme - align static Shopify pages with ServerSource modern theme */ 1354/* SS Page Theme â footer-safe extras only (chrome lives in ss-static-chrome-critical.css) */ 1355 1356#hubspot-messages-iframe-container, 1357#hs-web-interactives-embed-container { 1358 z-index: 999999 !important; 1359} 1360 1361body.contact-flyout-open #hubspot-messages-iframe-container { 1362 right: min(calc(24rem + 3.25rem), calc(100vw - 1rem)) !important; 1363 transition: right 0.45s cubic-bezier(0.4, 0, 0.2, 1); 1364} 1365 1366 1367 1368#ssStaticFooterRoot { 1369 width: 100% !important; 1370 max-width: none !important; 1371 margin: 0 !important; 1372 padding: 0 !important; 1373 clear: both !important; 1374 font-family: Poppins, sans-serif !important; 1375} 1376#ssStaticFooterRoot footer.ss-modern-footer { 1377 display: block !important; 1378 width: 100% !important; 1379 background: #1f485e !important; 1380 color: #fff !important; 1381 padding: 2rem 0 0 !important; 1382 margin: 0 !important; 1383} 1384#ssStaticFooterRoot .wrap { 1385 width: min(100% - 2rem, 1280px) !important; 1386 margin-left: auto !important; 1387 margin-right: auto !important; 1388} 1389#ssStaticFooterRoot .footer-main-grid { 1390 display: grid !important; 1391 grid-template-columns: minmax(0, 1fr) minmax(18.5rem, 23.5rem) !important; 1392 gap: 1.75rem 2rem !important; 1393 align-items: start !important; 1394} 1395#ssStaticFooterRoot .footer-nav-columns { 1396 display: grid !important; 1397 grid-template-columns: repeat(3, minmax(0, 1fr)) !important; 1398 gap: 1rem 1.75rem !important; 1399} 1400#ssStaticFooterRoot .footer-signup-native { 1401 display: flex !important; 1402 flex-direction: row !important; 1403 gap: .5rem !important; 1404} 1405#ssStaticFooterRoot .footer-signup-native__email { flex: 1 1 auto !important; min-width: 0 !important; } 1406#ssStaticFooterRoot .footer-signup-native__btn { 1407 background: #1f485e !important; 1408 color: #fff !important; 1409 border: none !important; 1410} 1411#ssStaticFooterRoot .footer-signup-hubspot-mount, 1412#ssStaticFooterRoot #ssStaticFooterHubspotForm, 1413#ssStaticFooterRoot #ssStaticFooterHubspotForm * { 1414 position: absolute !important; 1415 left: -9999px !important; 1416 width: 1px !important; 1417 height: 1px !important; 1418 overflow: hidden !important; 1419 opacity: 0 !important; 1420 pointer-events: none !important; 1421 visibility: hidden !important; 1422 clip: rect(0,0,0,0) !important; 1423} 1424#ssStaticFooterRoot .footer-social-links svg { 1425 width: 16px !important; 1426 height: 16px !important; 1427} 1428#ssStaticFooterRoot .footer-trust-logo { 1429 display: block !important; 1430 height: 104px !important; 1431 width: auto !important; 1432 max-width: min(100%, 520px) !important; 1433 object-fit: contain !important; 1434} 1435#ssStaticFooterRoot .footer-trust-inner { 1436 display: flex !important; 1437 flex-wrap: wrap !important; 1438 align-items: center !important; 1439 justify-content: space-between !important; 1440} 1441#ssStaticFooterRoot ul.footer-link-list { 1442 list-style: none !important; 1443 padding: 0 !important; 1444 margin: 0 !important; 1445} 1446@media (max-width: 1100px) { 1447 #ssStaticFooterRoot .footer-main-grid { grid-template-columns: 1fr !important; } 1448} 1449@media (max-width: 768px) { 1450 #ssStaticFooterRoot .footer-nav-columns { grid-template-columns: 1fr !important; } 1451} 1452#hubspot-messages-iframe-container, 1453#hs-web-interactives-embed-container { z-index: 999999 !important; } 1454</style> 1455<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1456<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 58721501393,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "page"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 1456
1456
1457<script> 1458 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 1459</script>
vendor: 1 bytes, line 1459
1459
1460<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
1460).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 58721501393,storefrontBaseUrl: "https://www.serversource.co.uk",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://www.serversource.co.uk/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b"],webPixelsConfigList: [{"id":"241434833","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-LX8ME8DJD6\\\",\\\"AW-17888451699\\\",\\\"GT-WB722WDV\\\",\\\"AW-967425429\\\",\\\"G-ZK4Z7KM6VB\\\"],\\\"target_country\\\":\\\"GB\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":[\\\"G-LX8ME8DJD6\\\",\\\"AW-17888451699\\\/xn3RCKXO-tccEPO48NFC\\\",\\\"AW-967425429\\\",\\\"G-ZK4Z7KM6VB\\\"]},{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":[\\\"G-LX8ME8DJD6\\\",\\\"AW-17888451699\\\/lnR8CNzt89ccEPO48NFC\\\",\\\"AW-967425429\\\",\\\"G-ZK4Z7KM6VB\\\"]},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-LX8ME8DJD6\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-LX8ME8DJD6\\\",\\\"AW-17888451699\\\/kh5sCKLO-tccEPO48NFC\\\",\\\"MC-CG1MBJWLTQ\\\",\\\"AW-967425429\\\",\\\"G-ZK4Z7KM6VB\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-LX8ME8DJD6\\\",\\\"AW-17888451699\\\/emp3CNnt89ccEPO48NFC\\\",\\\"MC-CG1MBJWLTQ\\\",\\\"AW-967425429\\\",\\\"G-ZK4Z7KM6VB\\\"]},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-LX8ME8DJD6\\\"},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-LX8ME8DJD6\\\",\\\"AW-17888451699\\\/g_pECOLt89ccEPO48NFC\\\",\\\"MC-CG1MBJWLTQ\\\",\\\"AW-967425429\\\",\\\"G-ZK4Z7KM6VB\\\"]},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-LX8ME8DJD6\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":[\\\"G-LX8ME8DJD6\\\",\\\"AW-17888451699\\\/1p2ICKjO-tccEPO48NFC\\\",\\\"AW-967425429\\\",\\\"G-ZK4Z7KM6VB\\\"]},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":[\\\"G-LX8ME8DJD6\\\",\\\"AW-17888451699\\\/U4Y4CN_t89ccEPO48NFC\\\",\\\"AW-967425429\\\",\\\"G-ZK4Z7KM6VB\\\"]},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-LX8ME8DJD6\\\"}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"ServerSource","paymentSettings":{"currencyCode":"GBP"},"myshopifyDomain":"serversource.myshopify.com","countryCode":"GB","storefrontUrl":"https:\/\/www.serversource.co.uk"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://www.serversource.co.uk/cdn","7ec887c8w14f9f074p854094e1m1370c602",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"false","themeId":"139383832785","themePublished":"true","eventMetadataId":"351eb89c-05b5-4cc4-8294-6f70f602384c","pageType":"page","resourceId":"81727652049","shopId":"58721501393","storefrontBaseUrl":"https:\/\/www.serversource.co.uk","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\"]","isMerchantRequest":"false","hashVersion":"7ec887c8w14f9f074p854094e1m1370c602","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
1460<script> 1461 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 1462 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 1463 window.ShopifyAnalytics.meta.currency = 'GBP'; 1464 var meta = {"page":{"pageType":"page","resourceType":"page","resourceId":81727652049,"requestId":"b5a8d03a-8a01-4235-b5b1-88c066db231e-1791451926"}}; 1465 for (var attr in meta) { 1466 window.ShopifyAnalytics.meta[attr] = meta[attr]; 1467 } 1468</script>
vendor: 1 bytes, line 1468
1468
1469<script class="analytics"> 1470 (function () { 1471 var customDocumentWrite = function(content) { 1472 var jquery = null; 1473 1474 if (window.jQuery) { 1475 jquery = window.jQuery; 1476 } else if (window.Checkout && window.Checkout.$) { 1477 jquery = window.Checkout.$; 1478 } 1479 1480 if (jquery) { 1481 jquery('body').append(content); 1482 } 1483 }; 1484 1485 var hasLoggedConversion = function(token) { 1486 if (token) { 1487 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 1488 } 1489 return false; 1490 } 1491 1492 var setCookieIfConversion = function(token) { 1493 if (token) { 1494 var twoMonthsFromNow = new Date(Date.now()); 1495 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 1496 1497 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 1498 } 1499 } 1500 1501 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 1502 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 1503 if (trekkie.integrations) { 1504 return; 1505 } 1506 trekkie.methods = [ 1507 'identify', 1508 'page', 1509 'ready', 1510 'track', 1511 'trackForm', 1512 'trackLink' 1513 ]; 1514 trekkie.factory = function(method) { 1515 return function() { 1516 var args = Array.prototype.slice.call(arguments); 1517 args.unshift(method); 1518 trekkie.push(args); 1519 if (method == 'track' || method == 'page') { 1520 var pageUrl; 1521 try { 1522 pageUrl = window.location.href; 1523 } catch (e) {} 1524 var pageReferrer; 1525 try { 1526 pageReferrer = document.referrer; 1527 } catch (e) {} 1528 try { 1529 if (window.__TREKKIE_SHIM_QUEUE == null) { 1530 window.__TREKKIE_SHIM_QUEUE = []; 1531 } 1532 window.__TREKKIE_SHIM_QUEUE.push({ 1533 from: 'trekkie-stub', 1534 method: method, 1535 args: args.slice(1), 1536 pageContext: { 1537 url: pageUrl, 1538 referrer: pageReferrer 1539 } 1540 }); 1541 } catch (e) { 1542 // no-op 1543 } 1544 } 1545 return trekkie; 1546 }; 1547 }; 1548 for (var i = 0; i < trekkie.methods.length; i++) { 1549 var key = trekkie.methods[i]; 1550 trekkie[key] = trekkie.factory(key); 1551 } 1552 trekkie.load = function(config) { 1553 trekkie.config = config || {}; 1554 trekkie.config.initialDocumentCookie = document.cookie; 1555 var first = document.getElementsByTagName('script')[0]; 1556var script = document.createElement('script'); 1557script.type = 'text/javascript'; 1558script.onerror = function(e) { 1559 var scriptFallback = document.createElement('script'); 1560 scriptFallback.type = 'text/javascript'; 1561 scriptFallback.onerror = function(error) { 1562 var Monorail = { 1563 produce: function produce(monorailDomain, schemaId, payload) { 1564 var currentMs = new Date().getTime(); 1565 var event = { 1566 schema_id: schemaId, 1567 payload: payload, 1568 metadata: { 1569 event_created_at_ms: currentMs, 1570 event_sent_at_ms: currentMs 1571 } 1572 }; 1573 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 1574 }, 1575 sendRequest: function sendRequest(endpointUrl, payload) { 1576 // Try the sendBeacon API 1577 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 1578 var blobData = new window.Blob([payload], { 1579 type: 'text/plain' 1580 }); 1581 1582 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 1583 return true; 1584 } // sendBeacon was not successful 1585 1586 } // XHR beacon 1587 1588 var xhr = new XMLHttpRequest(); 1589 1590 try { 1591 xhr.open('POST', endpointUrl); 1592 xhr.setRequestHeader('Content-Type', 'text/plain'); 1593 xhr.send(payload); 1594 } catch (e) { 1595 console.log(e); 1596 } 1597 1598 return false; 1599 }, 1600 isIos12: function isIos12() { 1601 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 1602 } 1603 }; 1604 Monorail.produce('monorail-edge.shopifysvc.com', 1605 'trekkie_storefront_load_errors/1.1', 1606 {shop_id: 58721501393, 1607 theme_id: 139383832785, 1608 app_name: "storefront", 1609 context_url: window.location.href, 1610 source_url: "//www.serversource.co.uk/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js"}); 1611 1612 }; 1613 scriptFallback.async = true; 1614 scriptFallback.src = '//www.serversource.co.uk/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js'; 1615 first.parentNode.insertBefore(scriptFallback, first); 1616}; 1617script.async = true; 1618script.src = '//www.serversource.co.uk/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js'; 1619first.parentNode.insertBefore(script, first); 1620 1621 }; 1622 trekkie.load( 1623 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":58721501393,"isMerchantRequest":null,"themeId":139383832785,"themeCityHash":"53562301020460226","contentLanguage":"en","currency":"GBP","eventMetadataId":"351eb89c-05b5-4cc4-8294-6f70f602384c"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}} 1624 ); 1625 1626 var loaded = false;
1627 trekkie.ready(function() { 1628 if (loaded) return; 1629 loaded = true; 1630 1631 window.ShopifyAnalytics.lib = window.trekkie; 1632 1633 var originalDocumentWrite = document.write; 1634 document.write = customDocumentWrite; 1635 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 1636 document.write = originalDocumentWrite; 1637 1638 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 1639 var token = match? match[1]: undefined; 1640 if (!hasLoggedConversion(token)) { 1641 setCookieIfConversion(token); 1642 1643 } 1644 }); 1645 1646 window.ShopifyAnalytics.lib.page(null,{"pageType":"page","resourceType":"page","resourceId":81727652049,"requestId":"b5a8d03a-8a01-4235-b5b1-88c066db231e-1791451926","shopifyEmitted":true}); 1647 1648 var eventsListenerScript = document.createElement('script'); 1649 eventsListenerScript.async = true; 1650 eventsListenerScript.src = "//www.serversource.co.uk/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 1651 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 1652})();</script>
vendor: 1 bytes, line 1652
1652
1653<script 1654 defer 1655 src="https://www.serversource.co.uk/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.10.0.min.js" 1656 data-application="storefront-renderer" 1657 data-shop-id="58721501393" 1658 data-render-region="gcp-us-central1" 1659 data-page-type="page" 1660 data-theme-instance-id="139383832785" 1661 data-theme-name="" 1662 data-theme-version="" 1663 data-monorail-region="shop_domain" 1664 data-resource-timing-sampling-rate="10" 1665 data-shs="true" 1666 data-shs-beacon="true" 1667 data-shs-export-with-fetch="true" 1668 data-shs-logs-sample-rate="1" 1669 data-shs-beacon-endpoint="https://www.serversource.co.uk/api/collect" 1670></script>
1670 1671<meta name="shopify-y" content="12e676bd-feaa-46ec-9627-83624f6eb54f" data-expiration="1823009526000"><meta name="shopify-s" content="feb7321e-c2db-45e0-a08d-8df7be27a23d" data-expiration="1791453726000"><meta name="new-cookie-storage-activated" content="t"> 1672</head> 1673 <body> 1674 �<!-- Paste into Shopify Admin page content. Theme template: static-chrome (or default). --> 1675 1676<!-- Chrome matches contact us.html (nav + contact flyout + footer). Re-upload ss-hubspot-phone-gb.js v=7. --> 1677 1678<!-- Generated from: contact us.html --> 1679 1680<style> 1681/* inlined: includes/ss-static-chrome-critical.css */ 1682/* Static page shell only â nav styling lives in SS Modern Header block (Get-ModernNavBlock). */ 1683 1684html.ss-static-html { 1685 scroll-behavior: smooth; 1686 margin: 0; 1687 padding: 0; 1688 font-size: 18px; 1689 -webkit-text-size-adjust: 100%; 1690} 1691 1692:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) { 1693 margin: 0 !important; 1694 padding: 0 !important; 1695 overflow-x: hidden; 1696 font-family: 'Poppins', sans-serif !important; 1697 background: #f4f8fb !important; 1698 color: #1a2332 !important; 1699 line-height: 1.6; 1700} 1701 1702/* Hide legacy chrome fragments if CSS remains in page head */ 1703:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) .topbar, 1704:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) .menu-section, 1705:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) .ss-menubar, 1706:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) .ss-pb-wrap { 1707 display: none !important; 1708} 1709 1710</style> 1711 1712<style> 1713/* inlined: includes/ss-contact-page-styles.css */ 1714/* Contact page â Bytestock-inspired layout, ServerSource branding */ 1715.ss-contact-page { 1716 --ss-icon-bg: #e3f2f9; 1717 --ss-icon-color: #1f485e; 1718 --ss-primary: #1f485e; 1719 --ss-accent: #1879a4; 1720 --ss-highlight: #00a8e1; 1721 --ss-muted: #64748b; 1722 --ss-border: #e2e8f0; 1723 --ss-tint: #f4f8fb; 1724 display: block; 1725 width: 100%; 1726 margin: 0; 1727 padding: 0; 1728 background: #fff; 1729 font-family: 'Poppins', sans-serif; 1730 color: #1a2332; 1731 line-height: 1.65; 1732} 1733 1734.ss-contact-page__content { 1735 width: min(100% - 2.5rem, 1100px); 1736 margin: 0 auto; 1737} 1738 1739.ss-contact-page__content--narrow { 1740 width: min(100% - 2.5rem, 720px); 1741} 1742 1743.ss-contact-page__content--wide { 1744 width: min(100% - 2rem, 1400px); 1745} 1746 1747.ss-contact-page__content--actions { 1748 width: min(100% - 2rem, 1180px); 1749} 1750 1751/* Blue hero banner */ 1752.ss-contact-page__hero { 1753 background: linear-gradient(135deg, #1f485e 0%, #1879a4 55%, #035e7f 100%); 1754 color: #fff; 1755 padding: 3rem 1.25rem; 1756 text-align: center; 1757} 1758 1759.ss-contact-page__hero-inner { 1760 max-width: 44rem; 1761 margin: 0 auto; 1762} 1763 1764.ss-contact-page__hero h1 { 1765 font-size: clamp(2rem, 4vw, 2.75rem); 1766 font-weight: 700; 1767 color: #fff; 1768 margin: 0 0 0.5rem; 1769 letter-spacing: -0.02em; 1770} 1771 1772.ss-contact-page__hero-lead { 1773 margin: 0; 1774 font-size: clamp(1.05rem, 2vw, 1.25rem); 1775 color: rgba(255, 255, 255, 0.92); 1776 line-height: 1.6; 1777} 1778 1779/* Intro copy below hero */ 1780.ss-contact-page__top { 1781 padding: 2rem 1.25rem 0; 1782 text-align: center; 1783 background: #fff; 1784} 1785 1786.ss-contact-page__top-copy { 1787 max-width: 42rem; 1788 margin: 0 auto; 1789 font-size: 1rem; 1790 color: #475569; 1791 line-height: 1.75; 1792} 1793 1794/* Action cards â Call + Email */ 1795.ss-contact-page__actions { 1796 padding: 2rem 1.25rem 2.5rem; 1797 background: #fff; 1798} 1799 1800.ss-contact-page__action-grid { 1801 display: grid; 1802 grid-template-columns: repeat(3, minmax(0, 1fr)); 1803 gap: 1.25rem; 1804 align-items: stretch; 1805} 1806 1807.ss-contact-page__action-card { 1808 background: var(--ss-tint); 1809 border: 1px solid var(--ss-border); 1810 border-radius: 12px; 1811 padding: 2rem 1.35rem 1.75rem; 1812 text-align: center; 1813 display: flex; 1814 flex-direction: column; 1815 align-items: center; 1816 height: 100%; 1817 min-height: 100%; 1818} 1819 1820.ss-contact-page__action-icon { 1821 width: 3.5rem; 1822 height: 3.5rem; 1823 border-radius: 50%; 1824 background: var(--ss-icon-bg); 1825 color: var(--ss-icon-color); 1826 display: flex; 1827 align-items: center; 1828 justify-content: center; 1829 font-size: 1.25rem; 1830 margin: 0 auto 1.15rem; 1831 flex-shrink: 0; 1832} 1833 1834.ss-contact-page__action-card h2 { 1835 font-size: 1.35rem; 1836 font-weight: 700; 1837 color: var(--ss-primary); 1838 margin: 0 0 0.65rem; 1839 width: 100%; 1840} 1841 1842.ss-contact-page__action-card p { 1843 font-size: 0.9375rem; 1844 color: var(--ss-muted); 1845 margin: 0 0 1.35rem; 1846 line-height: 1.65; 1847 flex: 1 1 auto; 1848 min-height: 4.75rem; 1849 width: 100%; 1850} 1851 1852.ss-contact-page__nowrap { 1853 white-space: nowrap; 1854} 1855 1856.ss-contact-page__action-card .ss-contact-page__btn { 1857 width: 100%; 1858 min-height: 2.875rem; 1859 padding: 0.7rem 1rem; 1860 display: flex; 1861 align-items: center; 1862 justify-content: center; 1863 text-align: center; 1864 line-height: 1.35; 1865 font-size: 0.8125rem; 1866 margin-top: auto; 1867 box-sizing: border-box; 1868} 1869 1870.ss-contact-page__btn { 1871 display: inline-flex; 1872 align-items: center; 1873 justify-content: center; 1874 padding: 0.75rem 1.75rem; 1875 border-radius: 6px; 1876 background: var(--ss-accent); 1877 color: #fff; 1878 font-family: 'Poppins', sans-serif; 1879 font-size: 0.9375rem; 1880 font-weight: 600; 1881 text-decoration: none; 1882 border: none; 1883 cursor: pointer; 1884 transition: background 0.15s; 1885 box-shadow: none; 1886} 1887 1888.ss-contact-page__btn:hover { 1889 background: #146a8f; 1890 color: #fff; 1891} 1892 1893/* Price guarantee band */ 1894.ss-contact-page__guarantee-band { 1895 background: #1879a4; 1896 padding: 1.25rem 1.25rem; 1897 text-align: center; 1898} 1899 1900.ss-contact-page__guarantee-band p { 1901 margin: 0; 1902 max-width: 52rem; 1903 margin-inline: auto; 1904 font-size: clamp(1rem, 2vw, 1.0625rem); 1905 color: #fff; 1906 line-height: 1.5; 1907} 1908 1909.ss-contact-page__guarantee-band strong { 1910 font-weight: 700; 1911} 1912 1913/* Form + addresses side by side */ 1914.ss-contact-page__form-section { 1915 padding: 3rem 1.25rem 3.5rem; 1916 background: var(--ss-tint); 1917} 1918 1919.ss-contact-page__form-split { 1920 display: grid; 1921 grid-template-columns: 1fr 1fr; 1922 gap: 1.75rem; 1923 align-items: stretch; 1924} 1925 1926.ss-contact-page__form-head { 1927 text-align: left; 1928 margin-bottom: 1.5rem; 1929} 1930 1931.ss-contact-page__side-info { 1932 display: flex; 1933 flex-direction: column; 1934 gap: 1.25rem; 1935 height: 100%; 1936} 1937 1938.ss-contact-page__loc-card { 1939 flex: 1; 1940} 1941 1942.ss-contact-page__loc-card,
1943.ss-contact-page__hours-card { 1944 background: #fff; 1945 border: 1px solid var(--ss-border); 1946 border-radius: 12px; 1947 padding: 1.5rem 1.5rem; 1948 box-shadow: 0 4px 16px rgba(15, 45, 61, 0.06); 1949} 1950 1951.ss-contact-page__loc-card h3, 1952.ss-contact-page__hours-card h3 { 1953 display: flex; 1954 align-items: center; 1955 gap: 0.65rem; 1956 font-size: 1.0625rem; 1957 font-weight: 600; 1958 color: var(--ss-primary); 1959 margin: 0 0 1rem; 1960} 1961 1962.ss-contact-page__address-block { 1963 margin-bottom: 1.25rem; 1964} 1965 1966.ss-contact-page__address-block:last-child { 1967 margin-bottom: 0; 1968} 1969 1970.ss-contact-page__address-block h4 { 1971 font-size: 0.8125rem; 1972 font-weight: 600; 1973 text-transform: uppercase; 1974 letter-spacing: 0.04em; 1975 color: var(--ss-muted); 1976 margin: 0 0 0.45rem; 1977} 1978 1979.ss-contact-page__hours-text { 1980 margin: 0; 1981 font-size: 0.9375rem; 1982 line-height: 1.75; 1983 color: #475569; 1984} 1985 1986.ss-contact-page__loc-icon { 1987 width: 2.25rem; 1988 height: 2.25rem; 1989 border-radius: 50%; 1990 background: var(--ss-icon-bg); 1991 color: var(--ss-icon-color); 1992 display: inline-flex; 1993 align-items: center; 1994 justify-content: center; 1995 font-size: 0.875rem; 1996 flex-shrink: 0; 1997} 1998 1999.ss-contact-page__address { 2000 font-style: normal; 2001 font-size: 0.9375rem; 2002 line-height: 1.85; 2003 color: #475569; 2004 margin: 0; 2005} 2006 2007.ss-contact-page__form-head h2 { 2008 font-size: clamp(1.5rem, 3vw, 2rem); 2009 font-weight: 700; 2010 color: var(--ss-primary); 2011 margin: 0 0 0.5rem; 2012} 2013 2014.ss-contact-page__form-head p { 2015 margin: 0; 2016 font-size: 1rem; 2017 color: var(--ss-muted); 2018} 2019 2020.ss-contact-page__form-panel { 2021 background: #fff; 2022 border: 1px solid var(--ss-border); 2023 border-radius: 12px; 2024 padding: 2rem 1.75rem; 2025 box-shadow: 0 4px 20px rgba(15, 45, 61, 0.06); 2026 height: 100%; 2027 box-sizing: border-box; 2028} 2029 2030.ss-contact-page__field { 2031 margin-bottom: 1.1rem; 2032} 2033 2034.ss-contact-page__field label { 2035 display: block; 2036 margin-bottom: 0.4rem; 2037 font-size: 0.875rem; 2038 font-weight: 500; 2039 color: var(--ss-primary); 2040} 2041 2042.ss-contact-page__req { 2043 color: #dc2626; 2044} 2045 2046.ss-contact-page__field input, 2047.ss-contact-page__field textarea { 2048 width: 100%; 2049 padding: 0.8rem 1rem; 2050 border: 1px solid var(--ss-border); 2051 border-radius: 8px; 2052 font-family: 'Poppins', sans-serif; 2053 font-size: 0.9375rem; 2054 color: #1a2332; 2055 background: #fff; 2056 transition: border-color 0.15s; 2057} 2058 2059.ss-contact-page__field input:focus, 2060.ss-contact-page__field textarea:focus { 2061 outline: none; 2062 border-color: var(--ss-accent); 2063} 2064 2065.ss-contact-page__field textarea { 2066 min-height: 9rem; 2067 resize: vertical; 2068} 2069 2070.ss-contact-page__submit { 2071 display: flex; 2072 align-items: center; 2073 justify-content: center; 2074 width: 100%; 2075 padding: 0.9rem 1.5rem; 2076 border: none; 2077 border-radius: 8px; 2078 background: var(--ss-accent); 2079 color: #fff; 2080 font-family: 'Poppins', sans-serif; 2081 font-size: 1rem; 2082 font-weight: 600; 2083 text-align: center; 2084 cursor: pointer; 2085 transition: background 0.15s; 2086 box-shadow: none; 2087} 2088 2089.ss-contact-page__submit:hover { 2090 background: #146a8f; 2091} 2092 2093.ss-contact-page__form-success, 2094.ss-contact-page__form-error { 2095 padding: 0.85rem 1rem; 2096 border-radius: 8px; 2097 margin-bottom: 1rem; 2098 font-size: 0.9375rem; 2099} 2100 2101.ss-contact-page__form-success { 2102 background: #d1fae5; 2103 color: #065f46; 2104} 2105 2106.ss-contact-page__form-error { 2107 background: #fee2e2; 2108 color: #b91c1c; 2109} 2110 2111/* Team section */ 2112.ss-contact-page__team-section { 2113 padding: 3.5rem 1.25rem 4rem; 2114 background: #fff; 2115 border-top: 1px solid var(--ss-border); 2116} 2117 2118.ss-contact-page__section-head { 2119 text-align: center; 2120 max-width: 40rem; 2121 margin: 0 auto 2.5rem; 2122} 2123 2124.ss-contact-page__section-head h2 { 2125 font-size: clamp(1.65rem, 3vw, 2.15rem); 2126 font-weight: 700; 2127 color: var(--ss-primary); 2128 margin: 0; 2129} 2130 2131.ss-contact-page__team { 2132 display: grid; 2133 grid-template-columns: repeat(5, minmax(0, 1fr)); 2134 gap: 1rem; 2135} 2136 2137.ss-contact-page__team-card { 2138 background: var(--ss-tint); 2139 border: 1px solid var(--ss-border); 2140 border-radius: 12px; 2141 padding: 1.5rem 0.85rem; 2142 min-width: 0; 2143 text-align: center; 2144 transition: border-color 0.2s, box-shadow 0.2s; 2145} 2146 2147.ss-contact-page__team-card:hover { 2148 border-color: var(--ss-accent); 2149 box-shadow: 0 8px 24px rgba(15, 45, 61, 0.08); 2150} 2151 2152.ss-contact-page__avatar { 2153 width: 3.25rem; 2154 height: 3.25rem; 2155 margin: 0 auto 0.85rem; 2156 border-radius: 50%; 2157 background: var(--ss-icon-bg); 2158 color: var(--ss-icon-color); 2159 font-size: 0.875rem; 2160 font-weight: 700; 2161 display: flex; 2162 align-items: center; 2163 justify-content: center; 2164} 2165 2166.ss-contact-page__team-card h3 { 2167 font-size: 1rem; 2168 font-weight: 600; 2169 color: var(--ss-primary); 2170 margin: 0 0 0.2rem; 2171} 2172 2173.ss-contact-page__role { 2174 font-size: 0.8125rem; 2175 color: var(--ss-muted); 2176 margin: 0 0 0.75rem; 2177} 2178 2179.ss-contact-page__team-links { 2180 display: flex; 2181 flex-direction: column; 2182 align-items: center; 2183 gap: 0.35rem; 2184 width: 100%; 2185} 2186 2187.ss-contact-page__link { 2188 display: flex; 2189 align-items: center; 2190 justify-content: flex-start; 2191 gap: 0.45rem; 2192 font-size: 0.8125rem; 2193 color: #1a2332; 2194 text-decoration: none; 2195 width: 100%; 2196 max-width: 13.5rem; 2197 text-align: left; 2198} 2199 2200@media (min-width: 1100px) { 2201 .ss-contact-page__team .ss-contact-page__link { 2202 white-space: nowrap; 2203 font-size: 0.78rem; 2204 max-width: 14.5rem; 2205 } 2206} 2207 2208.ss-contact-page__link i { 2209 color: var(--ss-icon-color); 2210 flex-shrink: 0; 2211} 2212 2213.ss-contact-page__link:hover {
2214 color: var(--ss-accent); 2215} 2216 2217/* Link shields */ 2218:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) #main-content.ss-contact-page a.ss-contact-page__link, 2219:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) #main-content.ss-contact-page a.ss-contact-page__btn { 2220 text-transform: none !important; 2221} 2222 2223:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) #main-content.ss-contact-page a.ss-contact-page__link { 2224 background: transparent !important; 2225 border: none !important; 2226} 2227 2228:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) #main-content.ss-contact-page a.ss-contact-page__btn, 2229:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) #main-content.ss-contact-page button.ss-contact-page__btn, 2230:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) #main-content.ss-contact-page .ss-contact-page__submit { 2231 display: inline-flex !important; 2232 align-items: center !important; 2233 justify-content: center !important; 2234 text-align: center !important; 2235 text-transform: none !important; 2236 background: #1879a4 !important; 2237 color: #fff !important; 2238 border: none !important; 2239 box-shadow: none !important; 2240} 2241 2242:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) #main-content.ss-contact-page a.ss-contact-page__btn:hover, 2243:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) #main-content.ss-contact-page button.ss-contact-page__btn:hover, 2244:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) #main-content.ss-contact-page .ss-contact-page__submit:hover { 2245 background: #146a8f !important; 2246 color: #fff !important; 2247} 2248 2249:is(body.ss-static-page, body.ss-modern-storefront, #ssPagePasteRoot) #main-content.ss-contact-page .ss-contact-page__action-card .ss-contact-page__btn { 2250 width: 100% !important; 2251 min-height: 2.875rem !important; 2252} 2253 2254@media (max-width: 900px) { 2255 .ss-contact-page__action-grid, 2256 .ss-contact-page__form-split { 2257 grid-template-columns: 1fr; 2258 } 2259 2260 .ss-contact-page__team { 2261 grid-template-columns: repeat(3, minmax(0, 1fr)); 2262 } 2263} 2264 2265@media (max-width: 600px) { 2266 .ss-contact-page__hero { 2267 padding: 2.5rem 1rem; 2268 } 2269 2270 .ss-contact-page__team { 2271 grid-template-columns: 1fr; 2272 } 2273} 2274 2275</style> 2276 2277<style> 2278 a:focus, a:focus-visible, a:active { outline: none !important; box-shadow: none !important; } 2279 </style> 2280 2281<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap" rel="stylesheet"> 2282 2283<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> 2284 2285<style> 2286/* Reference chrome (FAQ-page-with-header.html) inside Shopify main content */ 2287body.ss-modern-storefront .main-content .ss-modern-header-wrap, 2288body.ss-modern-storefront .main-content #ssStaticFooterRoot, 2289body.ss-modern-storefront .main-content .ss-page-paste-footer { 2290 display: block !important; 2291} 2292body.ss-modern-storefront .main-content .contact-flyout { 2293 display: flex !important; 2294 position: fixed !important; 2295 right: 0 !important; 2296 z-index: 999999 !important; 2297} 2298@media (max-width: 640px) { 2299 body.ss-modern-storefront .main-content .contact-flyout { 2300 top: auto !important; 2301 bottom: 1rem !important; 2302 } 2303} 2304body.ss-static-page .ss-nav-backdrop, 2305body.ss-modern-storefront .ss-nav-backdrop { 2306 display: none; 2307 position: fixed; 2308 inset: 0; 2309 background: rgba(10, 20, 35, 0.52); 2310 z-index: 1099; 2311 border: none; 2312 padding: 0; 2313 margin: 0; 2314 cursor: default; 2315 -webkit-tap-highlight-color: transparent; 2316} 2317body.ss-static-page .ss-nav-backdrop.is-active, 2318body.ss-modern-storefront .ss-nav-backdrop.is-active, 2319body.ss-static-page.nav-menu-open .ss-nav-backdrop, 2320body.ss-modern-storefront.nav-menu-open .ss-nav-backdrop { 2321 display: block; 2322} 2323</style> 2324 2325<!-- SS Modern Header --> 2326<style> 2327/* SS Modern Nav + Contact Flyout ââ¬â synced from shopify-static-nav-bar.html */ 2328:root { 2329 --primary: #1f485e; 2330 --accent: #1879a4; 2331 --dark: #035e7f; 2332 --highlight: #00a8e1; 2333 --tint: #f4f8fb; 2334 --border: #e2e8f0; 2335 --muted: #64748b; 2336 --text: #1a2332; 2337 --max: 1280px; 2338 } 2339 2340 html, html.ss-modern-html, html.ss-static-html { 2341 font-size: 18px; 2342 -webkit-text-size-adjust: 100%; 2343 } 2344 2345 *, *::before, *::after { box-sizing: border-box; } 2346 body { 2347 margin: 0; 2348 font-family: 'Poppins', sans-serif; 2349 background: var(--tint); 2350 color: #1a2332; 2351 } 2352 2353 .wrap { width: min(100% - 2rem, var(--max)); margin-inline: auto; } 2354 2355 /* Top utility bar */ 2356 .top-bar { 2357 background: #eef2f6; 2358 border-bottom: 1px solid var(--border); 2359 color: var(--primary); 2360 } 2361 .top-bar-inner { 2362 display: flex; 2363 align-items: center; 2364 justify-content: space-between; 2365 gap: .75rem 1.25rem; 2366 padding: .45rem 0; 2367 font-size: .8125rem; 2368 font-weight: 500; 2369 } 2370 .top-bar-contact, 2371 .top-bar-right { 2372 display: flex; 2373 align-items: center; 2374 flex-wrap: wrap; 2375 gap: .5rem .85rem; 2376 } 2377 .top-bar a { color: var(--primary); text-decoration: none; transition: color .15s; } 2378 .top-bar a:hover { color: var(--accent); } 2379 .top-bar-sep { color: #b8c5d0; user-select: none; font-weight: 400; } 2380 .top-bar-social { display: flex; align-items: center; gap: .35rem; } 2381 .top-bar-social a { 2382 display: inline-flex; 2383 align-items: center; 2384 justify-content: center; 2385 width: 1.75rem; 2386 height: 1.75rem; 2387 border-radius: 4px; 2388 color: var(--primary); 2389 } 2390 .top-bar-social a:hover { background: rgba(31, 72, 94, .08); color: var(--accent); } 2391 .top-bar-social svg { width: .9375rem; height: .9375rem; fill: currentColor; } 2392 .top-bar-note { color: var(--muted); font-size: .75rem; white-space: nowrap; } 2393 .top-bar-app-slot { 2394 display: inline-flex; align-items: center; gap: .35rem; 2395 } 2396 .top-bar-app-slot:empty { display: none; } 2397 .top-bar-app-slot form, 2398 .top-bar-app-slot .disclosure { 2399 margin: 0; padding: 0; 2400 } 2401 2402 /* Main nav */ 2403.shop-nav { 2404 background: var(--primary); 2405 color: #fff; 2406 border-bottom: 1px solid rgba(255, 255, 255, .1); 2407 } 2408 .shop-nav-row { 2409 display: grid; 2410 grid-template-columns: auto 1fr auto; 2411 align-items: center; 2412 gap: .75rem 1rem; 2413 padding: .55rem 1rem; 2414 width: min(100% - 1rem, var(--max)); 2415 max-width: var(--max); 2416 margin: 0 auto; 2417 overflow: visible; 2418 } 2419 .shop-nav-logo { 2420 display: flex; 2421 align-items: center; 2422 gap: .55rem; 2423 color: #fff; 2424 text-decoration: none; 2425 flex-shrink: 0; 2426 } 2427 .shop-nav-logo img { 2428 height: 40px; 2429 width: 40px; 2430 object-fit: cover; 2431 display: block; 2432 border-radius: 6px; 2433 flex-shrink: 0; 2434 background: #fff; 2435 } 2436 .shop-nav-logo-copy { 2437 display: flex; 2438 flex-direction: column; 2439 gap: .05rem; 2440 line-height: 1.1; 2441 } 2442 .shop-nav-logo-text { 2443 font-size: 1.12rem; 2444 font-weight: 800; 2445 letter-spacing: -.01em; 2446 white-space: nowrap; 2447 } 2448 .shop-nav-logo-text .logo-server { color: var(--highlight); }
2449 .shop-nav-logo-text .logo-source { color: #b8c5d0; } 2450 .shop-nav-logo-est { 2451 display: inline-flex; 2452 align-items: baseline; 2453 gap: .2em; 2454 font-size: .75rem; 2455 font-weight: 700; 2456 color: rgba(255, 255, 255, .92); 2457 white-space: nowrap; 2458 } 2459 .shop-nav-logo-est-label { letter-spacing: .12em; } 2460 .shop-nav-logo-year { 2461 letter-spacing: .03em; 2462 font-variant-numeric: lining-nums tabular-nums; 2463 } 2464 .shop-nav-right { 2465 display: flex; 2466 align-items: center; 2467 gap: .5rem; 2468 flex-shrink: 0; 2469 } 2470 .shop-nav-links { 2471 display: flex; 2472 align-items: center; 2473 justify-content: center; 2474 flex-wrap: nowrap; 2475 gap: .2rem .3rem; 2476 min-width: 0; 2477 overflow: visible; 2478 } 2479 .shop-nav-drop { position: relative; display: block; flex-shrink: 0; } 2480 .shop-nav-link { 2481 display: inline-flex; 2482 align-items: center; 2483 justify-content: center; 2484 gap: .3rem; 2485 height: 2.125rem; 2486 min-height: 2.125rem; 2487 padding: 0 .55rem; 2488 font-size: .84rem; 2489 font-weight: 600; 2490 flex-shrink: 0; 2491 letter-spacing: .01em; 2492 color: #fff; 2493 white-space: nowrap; 2494 border-radius: 4px; 2495 border: none; 2496 border-bottom: 3px solid rgba(255, 255, 255, .28); 2497 background: transparent; 2498 cursor: pointer; 2499 font-family: inherit; 2500 transition: background .15s, border-color .15s, color .15s; 2501 text-decoration: none; 2502 box-sizing: border-box; 2503 line-height: 1; 2504 margin: 0; 2505 -webkit-appearance: none; 2506 appearance: none; 2507 } 2508 .shop-nav-link:hover, 2509 .shop-nav-link:focus-visible, 2510 .shop-nav-drop:hover > .shop-nav-link, 2511 .shop-nav-drop.is-open > .shop-nav-link { 2512 background: rgba(255, 255, 255, .15); 2513 border-bottom-color: var(--highlight); 2514 outline: none; 2515 } 2516 .shop-nav-link .shop-nav-chevron { 2517 width: 9px; 2518 height: 9px; 2519 min-width: 9px; 2520 min-height: 9px; 2521 fill: currentColor; 2522 flex-shrink: 0; 2523 display: block; 2524 margin-left: .2rem; 2525 transition: transform .15s ease; 2526 } 2527 .shop-nav-drop:hover > .shop-nav-link .shop-nav-chevron, 2528 .shop-nav-drop.is-open > .shop-nav-link .shop-nav-chevron { 2529 transform: rotate(180deg); 2530 } 2531 .shop-nav-link--store { 2532 background: #00a8e1; 2533 color: #fff; 2534 border-bottom-color: transparent; 2535 border-radius: .375rem; 2536 box-shadow: 0 2px 10px rgba(0, 168, 225, .35); 2537 } 2538 .shop-nav-link--store:hover, 2539 .shop-nav-link--store:focus-visible { 2540 background: #0090c4; 2541 border-bottom-color: transparent; 2542 box-shadow: 0 2px 10px rgba(0, 168, 225, .35); 2543 } 2544 .shop-nav-drop-menu { 2545 display: none; 2546 position: absolute; 2547 top: 100%; 2548 left: 0; 2549 z-index: 1200; 2550 min-width: 220px; 2551 max-width: 340px; 2552 margin-top: .15rem; 2553 background: #fff; 2554 border: 1px solid #d0d0d0; 2555 box-shadow: 0 8px 24px rgba(15, 45, 61, .14); 2556 padding: .35rem 0; 2557 border-radius: 8px; 2558 animation: navDropIn .18s ease-out; 2559 } 2560 @keyframes navDropIn { 2561 from { opacity: 0; transform: translateY(4px); } 2562 to { opacity: 1; transform: translateY(0); } 2563 } 2564 .shop-nav-drop:hover .shop-nav-drop-menu, 2565 .shop-nav-drop.is-open .shop-nav-drop-menu { display: block; } 2566 .shop-nav-drop-menu a { 2567 display: block; 2568 padding: .7rem 1.25rem; 2569 font-size: .875rem; 2570 font-weight: 500; 2571 line-height: 1.35; 2572 color: #1f485e; 2573 white-space: nowrap; 2574 text-decoration: none; 2575 transition: background .15s, color .15s; 2576 } 2577 .shop-nav-drop-menu a:hover { background: #f4f8fb; color: #1879a4; } 2578 .nav-toggle { 2579 display: none; 2580 align-items: center; 2581 gap: .5rem; 2582 background: rgba(255, 255, 255, .1); 2583 border: 1px solid rgba(255, 255, 255, .25); 2584 border-radius: .5rem; 2585 cursor: pointer; 2586 padding: .5rem .75rem; 2587 font: 600 .875rem 'Poppins', sans-serif; 2588 color: #fff; 2589 } 2590 .nav-toggle svg { width: 20px; height: 20px; fill: currentColor; } 2591 2592 .ss-nav-search { position: relative; display: flex; align-items: center; } 2593 .ss-nav-search-toggle { 2594 display: inline-flex; align-items: center; justify-content: center; 2595 width: 2.125rem; height: 2.125rem; padding: 0; 2596 background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.25); 2597 border-radius: .375rem; color: #fff; cursor: pointer; 2598 } 2599 .ss-nav-search-toggle:hover, .ss-nav-search-toggle:focus-visible { 2600 background: rgba(255,255,255,.18); border-color: var(--highlight); outline: none; 2601 } 2602 .ss-nav-search-panel { 2603 position: absolute; top: calc(100% + .45rem); right: 0; 2604 width: min(22rem, calc(100vw - 2rem)); 2605 opacity: 0; visibility: hidden; pointer-events: none; 2606 transition: opacity .2s ease, visibility .2s ease, transform .2s ease; 2607 transform: translateY(-4px); z-index: 1300; 2608 } 2609 .ss-nav-search-toggle-box { 2610 position: absolute; 2611 width: 1px; 2612 height: 1px; 2613 padding: 0; 2614 margin: -1px; 2615 overflow: hidden; 2616 clip: rect(0, 0, 0, 0); 2617 white-space: nowrap; 2618 border: 0; 2619 } 2620 .ss-nav-search-panel.active, 2621 .ss-nav-search:has(#ssNavSearchToggleBox:checked) .ss-nav-search-panel { 2622 opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); 2623 } 2624 .ss-nav-search-form { 2625 display: flex; margin: 0; padding: .35rem; 2626 background: rgba(24, 121, 164, .92); border-radius: .375rem; 2627 box-shadow: 0 10px 28px rgba(15, 45, 61, .22); 2628 } 2629 .ss-nav-search-form input[name="q"] { 2630 flex: 1 1 auto; min-width: 0; width: 100%; 2631 padding: .65rem .85rem; border: none; border-radius: .25rem; 2632 font: 400 .875rem 'Poppins', sans-serif; color: #1a2332; background: #fff; 2633 } 2634 .ss-nav-search-form input[name="q"]:focus { outline: 2px solid var(--highlight); outline-offset: 0; } 2635/* Contact flyout â tab left of form, slides out attached (Bytestock-style) */ 2636 .contact-flyout { 2637 --contact-tab-w: 2.875rem; 2638 --contact-panel-w: 24rem; 2639 position: fixed; right: 0; top: 50%; 2640 z-index: 900; 2641 display: flex; flex-direction: row; align-items: center; 2642 pointer-events: auto; 2643 overflow: visible; 2644 transform: translateY(-50%) translateX(calc(100% - 2.875rem)); 2645 transition: transform .45s cubic-bezier(.4,0,.2,1); 2646 } 2647 .contact-flyout.is-open,
2648 .contact-flyout:has(#contactFlyoutToggle:checked) { 2649 transform: translateY(-50%) translateX(0); 2650 } 2651 .contact-flyout-toggle { 2652 position: absolute; 2653 width: 1px; 2654 height: 1px; 2655 padding: 0; 2656 margin: -1px; 2657 overflow: hidden; 2658 clip: rect(0, 0, 0, 0); 2659 white-space: nowrap; 2660 border: 0; 2661 } 2662 .contact-flyout-panel, 2663 .contact-flyout-tab { pointer-events: auto; } 2664 .contact-flyout-tab { 2665 order: 1; 2666 width: var(--contact-tab-w); flex-shrink: 0; border: none; cursor: pointer; 2667 background: #c8dde8; color: #1a2332; 2668 border-radius: 16px 0 0 16px; 2669 padding: .85rem .4rem .95rem; 2670 display: flex; flex-direction: column; align-items: center; justify-content: space-between; 2671 height: 9.75rem; 2672 box-shadow: -4px 4px 16px rgba(0,0,0,.1); 2673 transition: background .15s, transform .45s cubic-bezier(.4,0,.2,1); 2674 z-index: 2; 2675 } 2676 .contact-flyout.is-open .contact-flyout-tab { 2677 box-shadow: none; 2678 } 2679 .contact-flyout-panel { 2680 order: 2; 2681 width: 24rem; 2682 min-width: 0; 2683 flex-shrink: 0; 2684 max-width: calc(100vw - 3.875rem); 2685 max-height: min(36rem, calc(100vh - 2rem)); 2686 overflow: hidden; 2687 background: #fff; 2688 border-radius: 0; 2689 opacity: 1; 2690 box-shadow: 10px 8px 40px rgba(0,0,0,.12); 2691 scrollbar-width: none; 2692 -ms-overflow-style: none; 2693 } 2694 .contact-flyout-panel::-webkit-scrollbar { width: 0; height: 0; display: none; } 2695 .contact-flyout-panel-inner { 2696 width: min(var(--contact-panel-w), calc(100vw - var(--contact-tab-w) - 1rem)); 2697 padding: 1.25rem 1.25rem 1rem; 2698 box-sizing: border-box; 2699 overflow: hidden; 2700 } 2701 .contact-flyout-hs-form { width: 100%; min-height: 18rem; } 2702 .contact-flyout-hs-form .hs-form-frame { 2703 display: block; width: 100%; min-height: 18rem; 2704 } 2705 .contact-flyout-tab:hover, 2706 .contact-flyout-tab:focus-visible { background: #b3d0e0; outline: none; } 2707 .contact-flyout-tab-text { 2708 writing-mode: vertical-rl; text-orientation: mixed; 2709 transform: rotate(180deg); 2710 font: 600 .9375rem 'Poppins', sans-serif; letter-spacing: .01em; 2711 white-space: nowrap; line-height: 1; 2712 } 2713 .contact-flyout-tab-chevron { 2714 display: inline-flex; align-items: center; justify-content: center; 2715 color: #1a2332; transition: transform .4s ease; 2716 } 2717 .contact-flyout-tab-chevron svg { width: .75rem; height: .75rem; fill: currentColor; } 2718 .contact-flyout.is-open .contact-flyout-tab-chevron,
2719 .contact-flyout:has(#contactFlyoutToggle:checked) .contact-flyout-tab-chevron { transform: rotate(180deg); } 2720 .contact-flyout-note { 2721 font-size: .8125rem; color: var(--text); line-height: 1.55; margin-top: .85rem; 2722 padding-top: .85rem; border-top: 1px solid #c5d4de; 2723 font-weight: 500; 2724 } 2725 .contact-flyout-note a { 2726 color: var(--primary); font-weight: 700; text-decoration: none; 2727 } 2728 .contact-flyout-note a:hover { text-decoration: underline; color: var(--accent); } 2729 @media (max-width: 640px) { 2730 .contact-flyout { 2731 top: auto; bottom: 1rem; 2732 transform: translateX(calc(100% - 2.875rem)); 2733 } 2734 .contact-flyout.is-open, 2735 .contact-flyout:has(#contactFlyoutToggle:checked) { 2736 transform: translateX(0); 2737 } 2738 .contact-flyout-panel { max-height: calc(100vh - 5rem); } 2739 .contact-flyout-panel-inner { padding: 1.5rem 1.25rem; } 2740 } 2741 @media (prefers-reduced-motion: reduce) { 2742 .contact-flyout, 2743 .contact-flyout-panel, 2744 .contact-flyout-tab, 2745 .contact-flyout-tab-chevron { transition: none; } 2746 } 2747 2748 2749 2750/* Nav size lock - synced from v14 snippets/ss-modern-global.liquid + serversource-modern.css @ 18px root. 2751 MUST load after page CSS. Live theme: html.ss-modern-html { font-size: 18px }. */ 2752html, 2753html.ss-modern-html, 2754html.ss-static-html { 2755 font-size: 18px !important; 2756 -webkit-text-size-adjust: 100% !important; 2757} 2758 2759.site-header.ss-modern-header-wrap, 2760.ss-modern-header-wrap { 2761 position: -webkit-sticky; 2762 position: sticky !important; 2763 top: 0 !important; 2764 z-index: 10001 !important; 2765 font-size: 18px !important; 2766 -webkit-text-size-adjust: 100% !important; 2767 width: 100% !important; 2768 max-width: none !important; 2769 margin: 0 !important; 2770 padding: 0 !important; 2771} 2772 2773.ss-modern-header-wrap .shop-nav-logo img { 2774 height: 40px !important; 2775 width: 40px !important; 2776 min-height: 40px !important; 2777 min-width: 40px !important; 2778 object-fit: cover !important; 2779 border-radius: 6px !important; 2780} 2781 2782.ss-modern-header-wrap .shop-nav-logo-text { 2783 font-size: 1.12rem !important; 2784 font-weight: 800 !important; 2785 line-height: 1.1 !important; 2786 letter-spacing: -0.01em !important; 2787} 2788 2789.ss-modern-header-wrap .top-bar-social svg { 2790 width: 0.9375rem !important; 2791 height: 0.9375rem !important; 2792 max-width: 0.9375rem !important; 2793 max-height: 0.9375rem !important; 2794 fill: currentColor !important; 2795} 2796 2797@media (min-width: 1101px) { 2798 .ss-modern-header-wrap .nav-toggle { 2799 display: none !important; 2800 } 2801 .ss-modern-header-wrap .shop-nav-links { 2802 position: static !important; 2803 transform: none !important; 2804 width: auto !important; 2805 height: auto !important; 2806 background: transparent !important; 2807 box-shadow: none !important; 2808 border: none !important; 2809 overflow: visible !important; 2810 } 2811} 2812 2813/* Loaded after page content â protects theme header from pasted page CSS (e.g. warranty HTML). */ 2814 .ss-modern-header-wrap .top-bar { 2815 display: block !important; 2816 padding: 0 !important; 2817 margin: 0 !important; 2818 background: #eef2f6 !important; 2819 border-bottom: 1px solid #e2e8f0 !important; 2820 overflow: visible !important; 2821 } 2822 .ss-modern-header-wrap .top-bar-inner { 2823 display: flex !important; 2824 flex-direction: row !important; 2825 align-items: center !important; 2826 justify-content: space-between !important; 2827 flex-wrap: wrap !important; 2828 gap: 0.75rem 1.25rem !important; 2829 padding: 0.45rem 0 !important; 2830 width: min(100% - 2rem, 1280px) !important; 2831 max-width: 1280px !important; 2832 margin-inline: auto !important; 2833 font-family: 'Poppins', sans-serif !important; 2834 font-size: 0.8125rem !important; 2835 font-weight: 500 !important; 2836 line-height: 1.6 !important; 2837 min-height: 0 !important; 2838 } 2839 .ss-modern-header-wrap .top-bar-contact, 2840 .ss-modern-header-wrap .top-bar-right { 2841 display: flex !important; 2842 align-items: center !important; 2843 flex-wrap: wrap !important; 2844 gap: 0.5rem 0.85rem !important; 2845 } 2846 .ss-modern-header-wrap .top-bar a { 2847 color: #1f485e !important; 2848 text-decoration: none !important; 2849 font-family: 'Poppins', sans-serif !important; 2850 font-size: 0.8125rem !important; 2851 font-weight: 500 !important; 2852 line-height: 1.6 !important; 2853 vertical-align: middle !important; 2854 } 2855 .ss-modern-header-wrap .top-bar-sep { 2856 color: #b8c5d0 !important; 2857 line-height: 1.6 !important; 2858 vertical-align: middle !important; 2859 } 2860 .ss-modern-header-wrap .top-bar-social { 2861 display: inline-flex !important;
2862 align-items: center !important; 2863 gap: 0.35rem !important; 2864 } 2865 .ss-modern-header-wrap .top-bar-social a { 2866 display: inline-flex !important; 2867 align-items: center !important; 2868 justify-content: center !important; 2869 width: 1.75rem !important; 2870 height: 1.75rem !important; 2871 padding: 0 !important; 2872 margin: 0 !important; 2873 border: none !important; 2874 line-height: 1 !important; 2875 vertical-align: middle !important; 2876 } 2877 .ss-modern-header-wrap .top-bar-note { 2878 line-height: 1.6 !important; 2879 vertical-align: middle !important; 2880 } 2881 .ss-modern-header-wrap .wrap { 2882 width: min(100% - 2rem, 1280px) !important; 2883 max-width: 1280px !important; 2884 margin-inline: auto !important; 2885 } 2886 @media (min-width: 641px) { 2887 .ss-modern-header-wrap .top-bar-inner { 2888 flex-direction: row !important; 2889 align-items: center !important; 2890 } 2891 } 2892 @media (max-width: 640px) { 2893 .ss-modern-header-wrap .top-bar-inner { 2894 flex-direction: row !important; 2895 align-items: center !important; 2896 flex-wrap: nowrap !important; 2897 padding: 0.3rem 0 !important; 2898 gap: 0.35rem !important; 2899 } 2900 /* V10 layout: contact on left, social icons at right end */ 2901 .ss-modern-header-wrap .top-bar-right { 2902 width: auto !important; 2903 margin-left: auto !important; 2904 justify-content: flex-end !important; 2905 gap: 0.45rem !important; 2906 } 2907 /* Show social icons â hide app-slot, separators, VAT note */ 2908 .ss-modern-header-wrap .top-bar-app-slot, 2909 .ss-modern-header-wrap .top-bar-sep, 2910 .ss-modern-header-wrap .top-bar-note { 2911 display: none !important; 2912 } 2913 .ss-modern-header-wrap .top-bar-social { 2914 display: flex !important; 2915 align-items: center !important; 2916 gap: 0.45rem !important; 2917 } 2918 .ss-modern-header-wrap .top-bar-social a { 2919 display: flex !important; 2920 align-items: center !important; 2921 color: rgba(255, 255, 255, 0.85) !important; 2922 } 2923 .ss-modern-header-wrap .top-bar-social a:hover { 2924 color: #fff !important; 2925 } 2926 .ss-modern-header-wrap .top-bar-social svg { 2927 width: 13px !important; 2928 height: 13px !important; 2929 fill: currentColor !important; 2930 } 2931 .ss-modern-header-wrap .top-bar-contact a { 2932 font-size: 0.7rem !important; 2933 } 2934 } 2935 .ss-modern-header-wrap .shop-nav-row { 2936 display: grid !important; 2937 grid-template-columns: auto 1fr auto !important; 2938 align-items: center !important; 2939 gap: 0.75rem 1rem !important; 2940 padding: 0.55rem 1rem !important; 2941 width: min(100% - 1rem, 1280px) !important; 2942 max-width: 1280px !important; 2943 margin: 0 auto !important; 2944 } 2945 /* Desktop nav layout â only fires at â¥1101px so it never fights the mobile drawer CSS */ 2946 @media (min-width: 1101px) { 2947 .ss-modern-header-wrap .shop-nav-links { 2948 display: flex !important; 2949 align-items: center !important; 2950 justify-content: center !important; 2951 flex-wrap: nowrap !important; 2952 gap: 0.2rem 0.3rem !important; 2953 min-width: 0 !important; 2954 } 2955 .ss-modern-header-wrap .shop-nav-link, 2956 .ss-modern-header-wrap button.shop-nav-link, 2957 .ss-modern-header-wrap a.shop-nav-link:not(.shop-nav-link--store) { 2958 display: inline-flex !important; 2959 align-items: center !important; 2960 justify-content: center !important; 2961 gap: 0.3rem !important; 2962 height: 2.125rem !important; 2963 min-height: 2.125rem !important; 2964 padding: 0 0.55rem !important; 2965 font: 600 0.84rem/1 'Poppins', sans-serif !important; 2966 color: #fff !important; 2967 white-space: nowrap !important; 2968 border: none !important; 2969 border-bottom: 3px solid rgba(255, 255, 255, 0.28) !important; 2970 border-radius: 4px !important; 2971 background: transparent !important; 2972 background-image: none !important; 2973 box-shadow: none !important; 2974 text-decoration: none !important; 2975 text-transform: none !important; 2976 letter-spacing: 0.01em !important; 2977 margin: 0 !important; 2978 flex-shrink: 0 !important; 2979 -webkit-appearance: none !important; 2980 appearance: none !important; 2981 } 2982 .ss-modern-header-wrap a.shop-nav-link.shop-nav-link--store { 2983 display: inline-flex !important; 2984 align-items: center !important; 2985 justify-content: center !important; 2986 gap: 0.3rem !important; 2987 height: 2.125rem !important; 2988 min-height: 2.125rem !important; 2989 padding: 0 0.55rem !important; 2990 font: 600 0.84rem/1 'Poppins', sans-serif !important; 2991 color: #fff !important; 2992 white-space: nowrap !important; 2993 border: none !important; 2994 border-bottom: 3px solid transparent !important; 2995 border-radius: 0.375rem !important; 2996 background: #00a8e1 !important; 2997 background-image: none !important; 2998 box-shadow: 0 2px 10px rgba(0, 168, 225, 0.35) !important; 2999 text-decoration: none !important; 3000 text-transform: none !important; 3001 letter-spacing: 0.01em !important; 3002 margin: 0 !important; 3003 flex-shrink: 0 !important; 3004 } 3005 .ss-modern-header-wrap .shop-nav-link:not(.shop-nav-link--store):hover, 3006 .ss-modern-header-wrap .shop-nav-link:not(.shop-nav-link--store):focus-visible, 3007 .ss-modern-header-wrap .shop-nav-drop:hover > .shop-nav-link, 3008 .ss-modern-header-wrap .shop-nav-drop.is-open > .shop-nav-link { 3009 background: rgba(255, 255, 255, 0.15) !important; 3010 border-bottom-color: #00a8e1 !important; 3011 color: #fff !important; 3012 } 3013 .ss-modern-header-wrap a.shop-nav-link.shop-nav-link--store:hover, 3014 .ss-modern-header-wrap a.shop-nav-link.shop-nav-link--store:focus-visible { 3015 background: #0090c4 !important; 3016 border-bottom-color: transparent !important; 3017 color: #fff !important; 3018 } 3019 } 3020 /* Mobile nav drawer - synced from v14 assets/ss-mobile.css (loads after ss-modern-nav-shield.css) */ 3021body.ss-static-page.nav-menu-open, body.ss-modern-storefront.nav-menu-open{ 3022 overflow: hidden; 3023} 3024 3025/* ââ Navigation ââ */ 3026@media (max-width: 1100px) { 3027body.ss-static-page .nav-toggle, body.ss-modern-storefront .nav-toggle{ 3028 min-height: 2.5rem; 3029 padding: 0.55rem 0.85rem !important; 3030 font-size: 0.8125rem !important; 3031 background: rgba(255, 255, 255, 0.12) !important; 3032 border: 1px solid rgba(255, 255, 255, 0.28) !important; 3033 } 3034 3035body.ss-static-page .shop-nav-link--store, body.ss-modern-storefront .shop-nav-link--store{ 3036 margin-bottom: 0.15rem; 3037 } 3038} 3039 3040@media (max-width: 749px) { 3041body.ss-static-page .top-bar-inner, body.ss-modern-storefront .top-bar-inner{ 3042 gap: 0.35rem; 3043 padding: 0.4rem 0 !important; 3044 } 3045 3046 body.ss-static-page .top-bar-contact, body.ss-modern-storefront .top-bar-contact, body.ss-static-page .top-bar-right, body.ss-modern-storefront .top-bar-right{ 3047 font-size: 0.72rem; 3048 gap: 0.35rem 0.55rem; 3049 } 3050 3051body.ss-static-page .top-bar-note, body.ss-modern-storefront .top-bar-note{ 3052 display: none; 3053 } 3054 3055body.ss-static-page .shop-nav-logo-est, body.ss-modern-storefront .shop-nav-logo-est{ 3056 display: none; 3057 } 3058 3059body.ss-static-page .shop-nav-logo-text, body.ss-modern-storefront .shop-nav-logo-text{ 3060 font-size: 0.9rem; 3061 } 3062 3063body.ss-static-page .shop-nav-row, body.ss-modern-storefront .shop-nav-row{ 3064 padding: 0.55rem 0.75rem !important; 3065 } 3066 3067} 3068 3069@media (max-width: 400px) { 3070body.ss-static-page .shop-nav-logo-copy, body.ss-modern-storefront .shop-nav-logo-copy{ 3071 max-width: 9.5rem; 3072 } 3073 3074body.ss-static-page .shop-nav-logo-text, body.ss-modern-storefront .shop-nav-logo-text{ 3075 overflow: hidden; 3076 text-overflow: ellipsis; 3077 } 3078} 3079 3080/* ââ Search panel: ensure white background + dark text on mobile ââ */ 3081@media (max-width: 1100px) { 3082body.ss-static-page .ss-modern-header-wrap .ss-nav-search, body.ss-modern-storefront .ss-modern-header-wrap .ss-nav-search{ 3083 position: relative !important; 3084 } 3085body.ss-static-page .ss-modern-header-wrap .ss-nav-search-panel, body.ss-modern-storefront .ss-modern-header-wrap .ss-nav-search-panel{ 3086 position: absolute !important; 3087 top: calc(100% + 0.5rem) !important; 3088 right: 0 !important; 3089 left: auto !important; 3090 width: min(22rem, calc(100vw - 1.5rem)) !important; 3091 background: #fff !important; 3092 border-radius: 8px !important; 3093 box-shadow: 0 6px 24px rgba(15, 45, 61, 0.2) !important; 3094 border: 1px solid #e2e8f0 !important; 3095 padding: 0.35rem !important; 3096 z-index: 1300 !important; 3097 } 3098body.ss-static-page .ss-modern-header-wrap .ss-nav-search-form, body.ss-modern-storefront .ss-modern-header-wrap .ss-nav-search-form{ 3099 background: #fff !important; 3100 border-radius: 6px !important; 3101 box-shadow: none !important; 3102 } 3103 body.ss-modern-storefront .ss-modern-header-wrap .ss-nav-search-form input[name="q"],
3104body.ss-static-page .ss-modern-header-wrap .ss-nav-search-form .form-control, body.ss-modern-storefront .ss-modern-header-wrap .ss-nav-search-form .form-control{ 3105 color: #1a2332 !important; 3106 background: #fff !important; 3107 -webkit-text-fill-color: #1a2332 !important; 3108 font-size: 0.9rem !important; 3109 padding: 0.6rem 0.85rem !important; 3110 border: none !important; 3111 width: 100% !important; 3112 caret-color: #1879a4 !important; 3113 } 3114body.ss-static-page .ss-modern-header-wrap .ss-nav-search-form input[name="q"]::placeholder, body.ss-modern-storefront .ss-modern-header-wrap .ss-nav-search-form input[name="q"]::placeholder{ 3115 color: #94a3b8 !important; 3116 -webkit-text-fill-color: #94a3b8 !important; 3117 opacity: 1 !important; 3118 } 3119} 3120 3121/* Nav footer and close btn: ALWAYS hidden â only shown inside the mobile drawer via the media query below */ 3122.ss-modern-header-wrap .shop-nav-footer, 3123.ss-modern-header-wrap .nav-close-btn, 3124body.ss-static-page .ss-modern-header-wrap .shop-nav-footer, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-footer, body.ss-static-page .ss-modern-header-wrap .nav-close-btn, body.ss-modern-storefront .ss-modern-header-wrap .nav-close-btn{ 3125 display: none !important; 3126} 3127 3128/* Backdrop overlay div (added by JS to body, not ::after â avoids stacking context issues) */ 3129body.ss-static-page .ss-nav-backdrop, body.ss-modern-storefront .ss-nav-backdrop{ 3130 display: none; 3131 position: fixed; 3132 inset: 0; 3133 background: rgba(10, 20, 35, 0.52); 3134 z-index: 1099; 3135 border: none; 3136 padding: 0; 3137 margin: 0; 3138 cursor: default; 3139 -webkit-tap-highlight-color: transparent; 3140} 3141body.ss-static-page .ss-nav-backdrop.is-active, body.ss-modern-storefront .ss-nav-backdrop.is-active, body.ss-static-page.nav-menu-open .ss-nav-backdrop, body.ss-modern-storefront.nav-menu-open .ss-nav-backdrop{ 3142 display: block; 3143} 3144 3145/* ââ Mobile nav drawer (â¤1100px) ââ */ 3146@media (max-width: 1100px) { 3147 /* 2-col grid: logo | nav-right; links are now a fixed-position drawer */ 3148body.ss-static-page .ss-modern-header-wrap .shop-nav-row, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-row{ 3149 grid-template-columns: auto auto !important; 3150 } 3151 3152 /* Drawer: always in DOM, slides off-screen to the right when closed */ 3153body.ss-static-page .ss-modern-header-wrap .shop-nav-links, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links{ 3154 display: flex !important; 3155 flex-direction: column !important; 3156 flex-wrap: nowrap !important; 3157 justify-content: flex-start !important; 3158 align-items: stretch !important; 3159 gap: 0 !important; 3160 position: fixed !important; 3161 top: 0 !important; 3162 right: 0 !important; 3163 bottom: 0 !important; 3164 left: auto !important; 3165 width: min(320px, 88vw) !important; 3166 height: 100dvh !important; 3167 background: #fff !important; 3168 z-index: 1100 !important; 3169 overflow-y: auto !important; 3170 overflow-x: hidden !important; 3171 padding: 0 !important; 3172 transform: translateX(110%) !important; 3173 transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important; 3174 box-shadow: -6px 0 32px rgba(0, 0, 0, 0.18) !important; 3175 border-left: 1px solid #e2e8f0 !important; 3176 } 3177body.ss-static-page .ss-modern-header-wrap .shop-nav-links.is-open, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links.is-open{ 3178 transform: translateX(0) !important; 3179 } 3180 3181 /* Close button â pinned to very top of drawer, above Online Store */ 3182body.ss-static-page .ss-modern-header-wrap .nav-close-btn, body.ss-modern-storefront .ss-modern-header-wrap .nav-close-btn{ 3183 order: -10 !important; 3184 display: flex !important; 3185 align-items: center !important; 3186 gap: 0.5rem !important; 3187 width: 100% !important; 3188 padding: 1rem 1.25rem 0.85rem !important; 3189 font: 600 0.875rem/1 'Poppins', sans-serif !important; 3190 color: #1f485e !important; 3191 background: #f4f8fb !important; 3192 border: none !important; 3193 border-bottom: 2px solid #e2e8f0 !important; 3194 cursor: pointer !important; 3195 text-align: left !important; 3196 -webkit-appearance: none !important; 3197 appearance: none !important; 3198 } 3199body.ss-static-page .ss-modern-header-wrap .nav-close-btn:hover, body.ss-modern-storefront .ss-modern-header-wrap .nav-close-btn:hover{ 3200 color: #1879a4 !important; 3201 background: #eaf3f8 !important; 3202 } 3203 3204 /* "Online Store" CTA â first item, full-width teal button */ 3205body.ss-static-page .ss-modern-header-wrap .shop-nav-links a.shop-nav-link--store, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links a.shop-nav-link--store{ 3206 order: -1 !important; 3207 display: flex !important; 3208 width: calc(100% - 2rem) !important; 3209 margin: 1rem 1rem 0.35rem !important; 3210 padding: 0.8rem 1.25rem !important; 3211 background: #1f485e !important; 3212 color: #fff !important; 3213 border: none !important; 3214 border-radius: 8px !important; 3215 font-size: 0.9375rem !important; 3216 font-weight: 600 !important; 3217 box-shadow: 0 2px 10px rgba(31, 72, 94, 0.22) !important; 3218 height: auto !important; 3219 min-height: 0 !important; 3220 /* Centre text within this button only */ 3221 justify-content: center !important;
3222 align-items: center !important; 3223 text-align: center !important; 3224 } 3225body.ss-static-page .ss-modern-header-wrap .shop-nav-links a.shop-nav-link--store:hover, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links a.shop-nav-link--store:hover{ 3226 background: #035e7f !important; 3227 } 3228 3229 /* 3230 * All other nav links â use .shop-nav-links.is-open for extra specificity so we 3231 * beat the `justify-content: center !important` in the ss-header-shield <style> block 3232 * which loads inline after this stylesheet. 3233 */ 3234 body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links.is-open .shop-nav-link:not(.shop-nav-link--store), 3235 body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links.is-open button.shop-nav-link, 3236 /* Also target closed state so items are correct as drawer slides in */ 3237 body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links .shop-nav-link:not(.shop-nav-link--store), 3238body.ss-static-page .ss-modern-header-wrap .shop-nav-links button.shop-nav-link, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links button.shop-nav-link{ 3239 display: flex !important; 3240 align-items: center !important; 3241 justify-content: flex-start !important; 3242 text-align: left !important; 3243 width: 100% !important; 3244 padding: 0.9rem 1.25rem !important; 3245 color: #1f485e !important; 3246 font-size: 0.9375rem !important; 3247 font-weight: 600 !important; 3248 background: transparent !important; 3249 border: none !important; 3250 border-bottom: 1px solid #f0f4f8 !important; 3251 border-radius: 0 !important; 3252 height: auto !important; 3253 min-height: 0 !important; 3254 letter-spacing: 0 !important; 3255 } 3256 body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links .shop-nav-link:not(.shop-nav-link--store):hover, 3257body.ss-static-page .ss-modern-header-wrap .shop-nav-links button.shop-nav-link:hover, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links button.shop-nav-link:hover{ 3258 background: #f4f8fb !important; 3259 color: #1879a4 !important; 3260 border-bottom-color: #f0f4f8 !important; 3261 } 3262 3263 /* Chevron pushed to right on dropdown triggers */ 3264body.ss-static-page .ss-modern-header-wrap .shop-nav-links .shop-nav-drop > .shop-nav-link .shop-nav-chevron, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links .shop-nav-drop > .shop-nav-link .shop-nav-chevron{ 3265 margin-left: auto !important; 3266 } 3267 3268 /* Dropdown submenus: static, light tint */ 3269body.ss-static-page .ss-modern-header-wrap .shop-nav-links .shop-nav-drop:not(.is-open) .shop-nav-drop-menu, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links .shop-nav-drop:not(.is-open) .shop-nav-drop-menu{ 3270 display: none !important; 3271 } 3272body.ss-static-page .ss-modern-header-wrap .shop-nav-links .shop-nav-drop.is-open .shop-nav-drop-menu, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links .shop-nav-drop.is-open .shop-nav-drop-menu{ 3273 display: block !important; 3274 position: static !important; 3275 box-shadow: none !important; 3276 border: none !important; 3277 border-top: 1px solid #e8eef3 !important; 3278 border-bottom: 1px solid #e8eef3 !important; 3279 background: #f4f8fb !important; 3280 border-radius: 0 !important; 3281 margin: 0 !important; 3282 padding: 0.2rem 0 !important; 3283 } 3284body.ss-static-page .ss-modern-header-wrap .shop-nav-links .shop-nav-drop-menu a, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links .shop-nav-drop-menu a{ 3285 display: block !important; 3286 color: #1f485e !important; 3287 padding: 0.65rem 1.75rem !important; 3288 font-size: 0.875rem !important; 3289 font-weight: 500 !important; 3290 border-bottom: 1px solid #edf1f5 !important; 3291 background: transparent !important; 3292 width: 100% !important; 3293 text-align: left !important; 3294 justify-content: flex-start !important; 3295 } 3296body.ss-static-page .ss-modern-header-wrap .shop-nav-links .shop-nav-drop-menu a:last-child, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links .shop-nav-drop-menu a:last-child{ 3297 border-bottom: none !important; 3298 } 3299body.ss-static-page .ss-modern-header-wrap .shop-nav-links .shop-nav-drop-menu a:hover, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-links .shop-nav-drop-menu a:hover{ 3300 background: #e3f2f9 !important; 3301 color: #1879a4 !important; 3302 } 3303 3304 /* Phone footer â shown only inside the drawer */ 3305body.ss-static-page .ss-modern-header-wrap .shop-nav-footer, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-footer{ 3306 display: block !important; 3307 margin-top: auto !important; 3308 padding: 1.15rem 1.25rem !important; 3309 border-top: 1px solid #e2e8f0 !important; 3310 text-align: center !important; 3311 } 3312body.ss-static-page .ss-modern-header-wrap .shop-nav-footer a, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-footer a{ 3313 font-family: 'Poppins', sans-serif !important; 3314 font-size: 0.9375rem !important; 3315 font-weight: 700 !important; 3316 color: #1879a4 !important; 3317 text-decoration: none !important; 3318 } 3319body.ss-static-page .ss-modern-header-wrap .shop-nav-footer a:hover, body.ss-modern-storefront .ss-modern-header-wrap .shop-nav-footer a:hover{ 3320 text-decoration: underline !important; 3321 } 3322} 3323 3324@media (max-width: 1100px) { 3325 body.ss-static-page .ss-modern-header-wrap .nav-toggle, 3326 body.ss-modern-storefront .ss-modern-header-wrap .nav-toggle { 3327 display: inline-flex !important; 3328 } 3329} 3330</style> 3331<div class="site-header ss-modern-header-wrap">
3332 <div class="top-bar"> 3333 <div class="wrap top-bar-inner"> 3334 <div class="top-bar-contact"> 3335 <a href="tel:01536274950">01536 274 950</a> 3336 <span class="top-bar-sep" aria-hidden="true">|</span> 3337 <a href="mailto:[email protected]">[email protected]</a> 3338 </div> 3339 <div class="top-bar-right"> 3340 <div class="top-bar-app-slot" id="ssTopBarApps" aria-label="Store preferences"></div> 3341 <div class="top-bar-social" aria-label="Follow ServerSource"> 3342 <a href="https://www.linkedin.com/company/serversource/" target="_blank" rel="noopener noreferrer" aria-label="LinkedIn"> 3343 <svg viewbox="0 0 448 512" aria-hidden="true"><path d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"></path></svg> 3344 </a> 3345 <a href="https://twitter.com/serversource" target="_blank" rel="noopener noreferrer" aria-label="X (Twitter)"> 3346 <svg viewbox="0 0 512 512" aria-hidden="true"><path d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z"></path></svg> 3347 </a> 3348 </div> 3349 <span class="top-bar-sep" aria-hidden="true">|</span> 3350 <span class="top-bar-note">All Prices ex VAT</span> 3351 </div> 3352 </div> 3353 </div> 3354 3355 <header class="shop-nav"> 3356 <div class="shop-nav-row"> 3357 <a href="https://www.serversource.co.uk/" class="shop-nav-logo" aria-label="ServerSource home, established 1996"> 3358 <img src="https://cdn.shopify.com/s/files/1/0587/2150/1393/files/logo-ServerSource-sq.jpg?v=1686233809" alt=""> 3359 <span class="shop-nav-logo-copy"> 3360 <span class="shop-nav-logo-text"><span class="logo-server">Server</span><span class="logo-source">Source</span></span> 3361 <span class="shop-nav-logo-est"><span class="shop-nav-logo-est-label">EST.</span><span class="shop-nav-logo-year">1996</span></span> 3362 </span> 3363 </a> 3364 3365 <nav class="shop-nav-links" id="mainNav" aria-label="Main navigation"> 3366 <button type="button" class="nav-close-btn" id="navCloseBtn" aria-label="Close menu"> 3367 <svg viewbox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" aria-hidden="true"><path d="M18 6L6 18M6 6l12 12"></path></svg> 3368 Close 3369 </button> 3370<a href="https://shop.serversource.eu/configure/" class="shop-nav-link shop-nav-link--store">Online Store</a> 3371 3372 <div class="shop-nav-drop"> 3373 <button type="button" class="shop-nav-link" aria-expanded="false">Our Services 3374 <svg class="shop-nav-chevron" viewbox="0 0 9 9" width="9" height="9" aria-hidden="true" focusable="false"><path d="M8.542 2.558a.625.625 0 0 1 0 .884l-3.6 3.6a.626.626 0 0 1-.884 0l-3.6-3.6a.625.625 0 1 1 .884-.884L4.5 5.716l3.158-3.158a.625.625 0 0 1 .884 0z" fill="currentColor"></path></svg> 3375 </button> 3376 <div class="shop-nav-drop-menu"> 3377 <a href="https://www.serversource.co.uk/pages/rack-and-stack-professional-deploy">ServerSource Deploy</a> 3378 <a href="https://www.serversource.co.uk/pages/serversource-advanced-raid-calculator">Raid Calculator</a> 3379 <a href="https://www.serversource.co.uk/pages/sell-to-serversource">Sell to Us</a> 3380 <a href="https://www.serversource.co.uk/pages/serversource-referral-rewards">Referral Rewards</a> 3381 </div> 3382 </div> 3383 3384 <div class="shop-nav-drop"> 3385 <button type="button" class="shop-nav-link" aria-expanded="false">Infrastructure 3386 <svg class="shop-nav-chevron" viewbox="0 0 9 9" width="9" height="9" aria-hidden="true" focusable="false"><path d="M8.542 2.558a.625.625 0 0 1 0 .884l-3.6 3.6a.626.626 0 0 1-.884 0l-3.6-3.6a.625.625 0 1 1 .884-.884L4.5 5.716l3.158-3.158a.625.625 0 0 1 .884 0z" fill="currentColor"></path></svg> 3387 </button> 3388 <div class="shop-nav-drop-menu"> 3389 <a href="https://www.serversource.co.uk/collections/dell-deals">Dell Deals</a> 3390 <a href="https://www.serversource.co.uk/collections/dell-servers">Dell Servers</a> 3391 <a href="https://www.serversource.co.uk/collections/dell-storage">Dell Storage</a> 3392 </div> 3393 </div> 3394 3395 <div class="shop-nav-drop"> 3396 <button type="button" class="shop-nav-link" aria-expanded="false">Warranty Services 3397 <svg class="shop-nav-chevron" viewbox="0 0 9 9" width="9" height="9" aria-hidden="true" focusable="false">
3397<path d="M8.542 2.558a.625.625 0 0 1 0 .884l-3.6 3.6a.626.626 0 0 1-.884 0l-3.6-3.6a.625.625 0 1 1 .884-.884L4.5 5.716l3.158-3.158a.625.625 0 0 1 .884 0z" fill="currentColor"></path></svg> 3398 </button> 3399 <div class="shop-nav-drop-menu"> 3400 <a href="https://www.serversource.co.uk/pages/warranty">Warranty Renewal Quote</a> 3401 <a href="https://www.serversource.co.uk/pages/warranty-registration">Register Your Warranty</a> 3402 </div> 3403 </div> 3404 3405 <div class="shop-nav-drop"> 3406 <button type="button" class="shop-nav-link" aria-expanded="false">Information 3407 <svg class="shop-nav-chevron" viewbox="0 0 9 9" width="9" height="9" aria-hidden="true" focusable="false"><path d="M8.542 2.558a.625.625 0 0 1 0 .884l-3.6 3.6a.626.626 0 0 1-.884 0l-3.6-3.6a.625.625 0 1 1 .884-.884L4.5 5.716l3.158-3.158a.625.625 0 0 1 .884 0z" fill="currentColor"></path></svg> 3408 </button> 3409 <div class="shop-nav-drop-menu"> 3410 <a href="https://www.serversource.co.uk/pages/contact">Contact ServerSource</a> 3411 <a href="https://www.serversource.co.uk/pages/about-us">About Us</a> 3412 <a href="https://www.serversource.co.uk/pages/faq">ServerSource FAQ</a> 3413 <a href="https://www.serversource.co.uk/pages/shipping-information-for-eu-eea-member-states">Duties for International Clients</a> 3414 </div> 3415 </div> 3416 3417 <a href="https://www.serversource.co.uk/pages/dell-enterprise-quote-page" class="shop-nav-link">Price Challenge Us</a> 3418 <a href="https://www.serversource.co.uk/blogs/news" class="shop-nav-link">News</a> 3419 <div class="shop-nav-footer"> 3420 <a href="tel:01536274950">Call 01536 274 950</a> 3421 </div> 3422</nav> 3423 3424 <div class="shop-nav-right"> 3425 <div class="ss-nav-search" id="ssNavSearch"> 3426 <input type="checkbox" id="ssNavSearchToggleBox" class="ss-nav-search-toggle-box" tabindex="-1"> 3427 <label for="ssNavSearchToggleBox" class="ss-nav-search-toggle search-toggle" id="ssNavSearchToggle" role="button" tabindex="0" aria-label="Search products" aria-expanded="false" aria-controls="ssNavSearchPanel"> 3428 <svg viewbox="0 0 512 512" width="18" height="18" aria-hidden="true">
3428<path d="M484.1,454.796l-110.5-110.6c29.8-36.3,47.6-82.8,47.6-133.4c0-116.3-94.3-210.6-210.6-210.6S0,94.496,0,210.796 s94.3,210.6,210.6,210.6c50.8,0,97.4-18,133.8-48l110.5,110.5c12.9,11.8,25,4.2,29.2,0C492.5,475.596,492.5,463.096,484.1,454.796z M41.1,210.796c0-93.6,75.9-169.5,169.5-169.5s169.6,75.9,169.6,169.5s-75.9,169.5-169.5,169.5S41.1,304.396,41.1,210.796z" fill="currentColor"></path></svg> 3429 </label> 3430 <div class="ss-nav-search-panel search-box-wrapper" id="ssNavSearchPanel" aria-hidden="true"> 3431 <form action="https://www.serversource.co.uk/search" method="get" role="search" class="ss-nav-search-form"> 3432 <input class="form-control" name="q" type="search" placeholder="Search productsâ¦" aria-label="Search products" autocomplete="off"> 3433 <input type="hidden" name="type" value="product"> 3434 </form> 3435 </div> 3436 </div> 3437 <button class="nav-toggle" id="navToggle" aria-label="Menu" aria-expanded="false"> 3438 Menu 3439 <svg viewbox="0 0 24 24" aria-hidden="true"><path d="M3 6h18v2H3V6zm0 5h18v2H3v-2zm0 5h18v2H3v-2z"></path></svg> 3440 </button> 3441 </div> 3442 </div> 3443 </header> 3444</div> 3445 3446<aside class="contact-flyout" id="contactFlyout" aria-label="Contact us"> 3447 <input type="checkbox" id="contactFlyoutToggle" class="contact-flyout-toggle" tabindex="-1"> 3448 <label for="contactFlyoutToggle" class="contact-flyout-tab" id="contactFlyoutTrigger" role="button" tabindex="0" aria-expanded="false" aria-controls="contactFlyoutPanel"> 3449 <span class="contact-flyout-tab-chevron" aria-hidden="true"> 3450 <svg viewbox="0 0 320 512"><path d="M47.1 239c-9.4 9.4-9.4 24.6 0 33.9l143 143c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L97.9 256 224 129.9c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L47.1 239z"></path></svg> 3451 </span> 3452 <span class="contact-flyout-tab-text">Contact Us</span> 3453 </label> 3454 <div class="contact-flyout-panel" id="contactFlyoutPanel" role="dialog" aria-modal="true" aria-label="Contact us" aria-hidden="true"> 3455 <div class="contact-flyout-panel-inner"> 3456 <div class="contact-flyout-hs-form" id="contactFlyoutHsForm"> 3457 <div class="hs-form-frame" data-region="na1" data-form-id="ada7b0ee-d8fc-46d7-912d-be93a02e9187" data-portal-id="20213111"></div> 3458 </div> 3459 <p class="contact-flyout-note">Or call <a href="tel:01536274950">01536 274 950</a> · Mon to Fri</p> 3460 </div> 3461 </div> 3462</aside> 3463
3464<script> 3465(function () { 3466 function wrapEl() { return document.getElementById('ssNavSearch'); } 3467 function toggleEl() { return document.getElementById('ssNavSearchToggle'); } 3468 function panelEl() { return document.getElementById('ssNavSearchPanel'); } 3469 function boxEl() { return document.getElementById('ssNavSearchToggleBox'); } 3470 3471 function positionSearchPanel() { 3472 var toggle = toggleEl(); 3473 var panel = panelEl(); 3474 if (!toggle || !panel) return; 3475 var r = toggle.getBoundingClientRect(); 3476 panel.style.setProperty('position', 'fixed', 'important'); 3477 panel.style.setProperty('top', (r.bottom + 8) + 'px', 'important'); 3478 panel.style.setProperty('right', Math.max(8, window.innerWidth - r.right) + 'px', 'important'); 3479 panel.style.setProperty('left', 'auto', 'important'); 3480 panel.style.setProperty('z-index', '2147483000', 'important'); 3481 } 3482 3483 function setSearchOpen(open) { 3484 var panel = panelEl(); 3485 var toggle = toggleEl(); 3486 var box = boxEl(); 3487 if (!panel || !toggle) return; 3488 if (box) box.checked = !!open; 3489 if (open) positionSearchPanel(); 3490 panel.classList.toggle('active', open); 3491 toggle.setAttribute('aria-expanded', open ? 'true' : 'false'); 3492 panel.setAttribute('aria-hidden', open ? 'false' : 'true'); 3493 if (open) { 3494 var input = panel.querySelector('input[name="q"]'); 3495 if (input) window.setTimeout(function () { input.focus(); }, 60); 3496 } 3497 } 3498 3499 document.addEventListener('change', function (e) { 3500 if (e.target && e.target.id === 'ssNavSearchToggleBox') setSearchOpen(e.target.checked); 3501 }); 3502 document.addEventListener('click', function (e) { 3503 var panel = panelEl(); 3504 var wrap = wrapEl(); 3505 var hit = e.target && e.target.closest ? e.target.closest('#ssNavSearchToggle') : null; 3506 if (hit) { 3507 if (boxEl()) return; 3508 e.preventDefault(); 3509 setSearchOpen(!(panel && panel.classList.contains('active'))); 3510 return; 3511 } 3512 if (!panel || !panel.classList.contains('active')) return; 3513 if (wrap && wrap.contains(e.target)) return; 3514 setSearchOpen(false); 3515 }); 3516 document.addEventListener('keydown', function (e) { 3517 var panel = panelEl(); 3518 var toggle = toggleEl(); 3519 if (e.key === 'Escape' && panel && panel.classList.contains('active')) setSearchOpen(false); 3520 if (!toggle || document.activeElement !== toggle) return; 3521 if (e.key !== 'Enter' && e.key !== ' ') return; 3522 e.preventDefault(); 3523 var box = boxEl(); 3524 setSearchOpen(!(box ? box.checked : (panel && panel.classList.contains('active')))); 3525 }); 3526 window.addEventListener('resize', function () { 3527 var panel = panelEl(); 3528 if (panel && panel.classList.contains('active')) positionSearchPanel(); 3529 }); 3530})(); 3531(function () { 3532 var flyout = document.getElementById('contactFlyout'); 3533 var panel = document.getElementById('contactFlyoutPanel'); 3534 var trigger = document.getElementById('contactFlyoutTrigger'); 3535 var toggle = document.getElementById('contactFlyoutToggle'); 3536 if (!flyout || !panel || !trigger) return; 3537 var inner = panel.querySelector('.contact-flyout-panel-inner'); 3538 var frame = document.getElementById('contactFlyoutHsForm'); 3539 var appliedScale = 1; 3540 3541 function apply(s) { 3542 if (!inner) return; 3543 appliedScale = s; 3544 if (s >= 0.999) { inner.style.transform = ''; inner.style.width = ''; inner.style.transformOrigin = ''; } 3545 else { 3546 inner.style.transformOrigin = 'top left'; 3547 inner.style.width = (100 / s) + '%'; 3548 inner.style.transform = 'scale(' + s + ')'; 3549 } 3550 } 3551 function fitForm() { 3552 if (!inner || !flyout.classList.contains('is-open')) return; 3553 inner.style.transform = ''; inner.style.width = ''; inner.style.transformOrigin = ''; 3554 var avail = panel.clientHeight - 4; 3555 var natural = inner.scrollHeight; 3556 var s = (avail > 0 && natural > avail) ? Math.max(0.6, avail / natural) : 1; 3557 if (Math.abs(s - appliedScale) > 0.003 || s < 1) apply(s); else appliedScale = 1; 3558 } 3559 var rafId = null, loopUntil = 0; 3560 function fitLoop() { 3561 fitForm(); 3562 if (flyout.classList.contains('is-open') && (typeof performance !== 'undefined' ? performance.now() : Date.now()) < loopUntil) { 3563 rafId = requestAnimationFrame(fitLoop); 3564 } else { rafId = null; } 3565 } 3566 function runLoop(ms) { 3567 loopUntil = (typeof performance !== 'undefined' ? performance.now() : Date.now()) + ms; 3568 if (rafId == null) rafId = requestAnimationFrame(fitLoop); 3569 } 3570 3571 if (frame && window.MutationObserver) { 3572 new MutationObserver(function () { if (flyout.classList.contains('is-open')) runLoop(700); }) 3573 .observe(frame, { childList: true, subtree: true }); 3574 } 3575 if (frame && window.ResizeObserver) { 3576 new ResizeObserver(function () { if (flyout.classList.contains('is-open')) runLoop(300); }).observe(frame); 3577 } 3578 window.addEventListener('resize', function () { if (flyout.classList.contains('is-open')) runLoop(400); }); 3579 panel.addEventListener('transitionend', function (e) { if (e.propertyName === 'width' && flyout.classList.contains('is-open')) runLoop(400); }); 3580 3581 function setOpen(open) { 3582 if (toggle) toggle.checked = !!open;
3583 flyout.classList.toggle('is-open', open); 3584 document.body.classList.toggle('contact-flyout-open', open); 3585 trigger.setAttribute('aria-expanded', open ? 'true' : 'false'); 3586 panel.setAttribute('aria-hidden', open ? 'false' : 'true'); 3587 if (open) { fitForm(); runLoop(2500); } else { apply(1); } 3588 } 3589 3590 if (toggle) { 3591 toggle.addEventListener('change', function () { setOpen(toggle.checked); }); 3592 } 3593 trigger.addEventListener('click', function (e) { 3594 if (toggle) return; 3595 e.preventDefault(); 3596 setOpen(!flyout.classList.contains('is-open')); 3597 }); 3598 trigger.addEventListener('keydown', function (e) { 3599 if (e.key !== 'Enter' && e.key !== ' ') return; 3600 e.preventDefault(); 3601 setOpen(!(toggle ? toggle.checked : flyout.classList.contains('is-open'))); 3602 }); 3603 document.addEventListener('keydown', function (e) { 3604 if (e.key === 'Escape' && (flyout.classList.contains('is-open') || (toggle && toggle.checked))) setOpen(false); 3605 }); 3606})(); 3607</script>
3607 3608 3609<div id="ssPagePasteRoot"> 3610 3611<div role="main" id="main-content" class="ss-contact-page"> 3612 3613 <section class="ss-contact-page__hero" aria-labelledby="contact-hero-heading"> 3614 <div class="ss-contact-page__hero-inner"> 3615 <h1 id="contact-hero-heading">Get in Touch</h1> 3616 <p class="ss-contact-page__hero-lead">We're here to assist you, no matter the inquiry.</p> 3617 </div> 3618 </section> 3619 3620 <section class="ss-contact-page__actions" aria-label="Contact options"> 3621 <div class="ss-contact-page__content ss-contact-page__content--actions"> 3622 <div class="ss-contact-page__action-grid"> 3623 <article class="ss-contact-page__action-card"> 3624 <div class="ss-contact-page__action-icon" aria-hidden="true"><i class="fas fa-phone"></i></div> 3625 <h2>Call Us</h2> 3626 <p>For quotes, warranty queries or technical support, speak to our Corby team directly.</p> 3627 <a href="tel:01536274950" class="ss-contact-page__btn">01536 274 950</a> 3628 </article> 3629 <article class="ss-contact-page__action-card"> 3630 <div class="ss-contact-page__action-icon" aria-hidden="true"><i class="fas fa-envelope"></i></div> 3631 <h2>Email Sales</h2> 3632 <p>Looking for a Dell infrastructure quote? Email our sales team and we'll respond promptly.</p> 3633 <a href="mailto:[email protected]" class="ss-contact-page__btn">[email protected]</a> 3634 </article> 3635 <article class="ss-contact-page__action-card"> 3636 <div class="ss-contact-page__action-icon" aria-hidden="true"><i class="fas fa-comment-dots"></i></div> 3637 <h2>Live Chat</h2> 3638 <p>For general queries, chat with our team via Live Chat, available Monday to Friday, <span class="ss-contact-page__nowrap">9:00 AM â 5:30 PM</span>.</p> 3639 <button type="button" class="ss-contact-page__btn" id="ss-contact-live-chat">Start Live Chat</button> 3640 </article> 3641 </div> 3642 </div> 3643 </section> 3644 3645 <section class="ss-contact-page__guarantee-band" aria-label="Price guarantee"> 3646 <div class="ss-contact-page__content"> 3647 <p><strong>ServerSource price guarantee.</strong> We will beat any valid quotation for your Dell Infrastructure.</p> 3648 </div> 3649 </section> 3650 3651 <section class="ss-contact-page__form-section" id="contact-form" aria-labelledby="form-heading"> 3652 <div class="ss-contact-page__content"> 3653 <header class="ss-contact-page__form-head"> 3654 <h2 id="form-heading">Have a question?</h2> 3655 <p>Fill out the form and one of our experts will be in touch as soon as possible.</p> 3656 </header> 3657 <div class="ss-contact-page__form-split"> 3658 <div class="ss-contact-page__form-panel"> 3659 <form method="post" action="/contact#contact_form" id="contact_form" accept-charset="UTF-8" class="ss-contact-page__form"> 3660 <input type="hidden" name="form_type" value="contact"> 3661 <input type="hidden" name="utf8" value="â"> 3662 <div class="ss-contact-page__field"> 3663 <label for="ContactFormEmail">Email <span class="ss-contact-page__req">*</span></label> 3664 <input type="email" id="ContactFormEmail" name="contact[email]" required autocomplete="email"> 3665 </div> 3666 <div class="ss-contact-page__field"> 3667 <label for="ContactFormName">Name</label> 3668 <input type="text" id="ContactFormName" name="contact[name]" autocomplete="name"> 3669 </div> 3670 <div class="ss-contact-page__field"> 3671 <label for="ContactFormBody">Message <span class="ss-contact-page__req">*</span></label> 3672 <textarea id="ContactFormBody" name="contact[body]" rows="6" required></textarea> 3673 </div> 3674 <button type="submit" class="ss-contact-page__submit">Send Message</button> 3675 </form> 3676 </div> 3677 <aside class="ss-contact-page__side-info" aria-labelledby="addresses-heading"> 3678 <article class="ss-contact-page__loc-card"> 3679 <h3 id="addresses-heading"> 3680<span class="ss-contact-page__loc-icon" aria-hidden="true"><i class="fas fa-location-dot"></i></span> Addresses</h3> 3681 <div class="ss-contact-page__address-block"> 3682 <h4>Delivery Address</h4> 3683 <address class="ss-contact-page__address"> 3684 ServerSource Limited<br> 3685 2 Perth House<br> 3686 Weldon North Industrial Estate<br> 3687 Corby, Northamptonshire<br> 3688 NN17 5JG 3689 </address> 3690 </div> 3691 <div class="ss-contact-page__address-block"> 3692 <h4>
3692Registered Office</h4> 3693 <p class="ss-contact-page__address"> 3694 The Pinnacle<br> 3695 170 Midsummer Boulevard<br> 3696 Milton Keynes<br> 3697 MK9 1BP 3698 </p> 3699 </div> 3700 </article> 3701 <article class="ss-contact-page__hours-card"> 3702 <h3> 3703<span class="ss-contact-page__loc-icon" aria-hidden="true"><i class="fas fa-clock"></i></span> Opening Hours</h3> 3704 <p class="ss-contact-page__hours-text">Monday to Friday<br>9:00 AM - 5:30 PM</p> 3705 </article> 3706 </aside> 3707 </div> 3708 </div> 3709 </section> 3710 3711 <section class="ss-contact-page__team-section" aria-labelledby="team-heading"> 3712 <div class="ss-contact-page__content ss-contact-page__content--wide"> 3713 <header class="ss-contact-page__section-head"> 3714 <h2 id="team-heading">Your Dedicated Team</h2> 3715 </header> 3716 <div class="ss-contact-page__team"> 3717 <article class="ss-contact-page__team-card"> 3718 <div class="ss-contact-page__avatar" aria-hidden="true">JL</div> 3719 <h3>Joe Laurie</h3> 3720 <p class="ss-contact-page__role">Sales & Technical Manager</p> 3721 <div class="ss-contact-page__team-links"> 3722 <a href="tel:01536274961" class="ss-contact-page__link"><i class="fas fa-phone" aria-hidden="true"></i> 01536 274 961</a> 3723 <a href="mailto:[email protected]" class="ss-contact-page__link"><i class="fas fa-envelope" aria-hidden="true"></i> [email protected]</a> 3724 </div> 3725 </article> 3726 <article class="ss-contact-page__team-card"> 3727 <div class="ss-contact-page__avatar" aria-hidden="true">KT</div> 3728 <h3>Kamon Tang</h3> 3729 <p class="ss-contact-page__role">Sales Team Leader</p> 3730 <div class="ss-contact-page__team-links"> 3731 <a href="tel:01536274962" class="ss-contact-page__link"><i class="fas fa-phone" aria-hidden="true"></i> 01536 274 962</a> 3732 <a href="mailto:[email protected]" class="ss-contact-page__link"><i class="fas fa-envelope" aria-hidden="true"></i> [email protected]</a> 3733 </div> 3734 </article> 3735 <article class="ss-contact-page__team-card"> 3736 <div class="ss-contact-page__avatar" aria-hidden="true">LG</div> 3737 <h3>Lydelle Grant</h3> 3738 <p class="ss-contact-page__role">Senior Warranty Manager</p> 3739 <div class="ss-contact-page__team-links"> 3740 <a href="tel:01536274963" class="ss-contact-page__link"><i class="fas fa-phone" aria-hidden="true"></i> 01536 274 963</a> 3741 <a href="mailto:[email protected]" class="ss-contact-page__link"><i class="fas fa-envelope" aria-hidden="true"></i> [email protected]</a> 3742 </div> 3743 </article> 3744 <article class="ss-contact-page__team-card"> 3745 <div class="ss-contact-page__avatar" aria-hidden="true">AC</div> 3746 <h3>Accounts Team</h3> 3747 <p class="ss-contact-page__role">Invoicing & payments</p> 3748 <div class="ss-contact-page__team-links"> 3749 <a href="tel:01536274951" class="ss-contact-page__link"><i class="fas fa-phone" aria-hidden="true"></i> 01536 274 951</a> 3750 <a href="mailto:[email protected]" class="ss-contact-page__link"><i class="fas fa-envelope" aria-hidden="true"></i> [email protected]</a> 3751 </div> 3752 </article> 3753 <article class="ss-contact-page__team-card"> 3754 <div class="ss-contact-page__avatar" aria-hidden="true">TS</div> 3755 <h3>Technical Support</h3> 3756 <p class="ss-contact-page__role">Faults & engineer dispatch</p> 3757 <div class="ss-contact-page__team-links"> 3758 <a href="tel:01536274953" class="ss-contact-page__link"><i class="fas fa-phone" aria-hidden="true"></i> 01536 274 953</a> 3759 <a href="mailto:[email protected]" class="ss-contact-page__link"><i class="fas fa-envelope" aria-hidden="true"></i> [email protected]</a> 3760 </div> 3761 </article> 3762 </div> 3763 </div> 3764 </section> 3765 3766</div> 3767
3768<script> 3769(function () { 3770 function openLiveChat() { 3771 if (window.HubSpotConversations && window.HubSpotConversations.widget) { 3772 window.HubSpotConversations.widget.open(); 3773 return; 3774 } 3775 window.hsConversationsOnReady = window.hsConversationsOnReady || []; 3776 window.hsConversationsOnReady.push(function () { 3777 if (window.HubSpotConversations && window.HubSpotConversations.widget) { 3778 window.HubSpotConversations.widget.open(); 3779 } 3780 }); 3781 } 3782 function bindLiveChat() { 3783 var btn = document.getElementById('ss-contact-live-chat'); 3784 if (btn) btn.addEventListener('click', openLiveChat); 3785 } 3786 if (document.readyState === 'loading') { 3787 document.addEventListener('DOMContentLoaded', bindLiveChat); 3788 } else { 3789 bindLiveChat(); 3790 } 3791})(); 3792</script>
3792 3793 3794</div> 3795 3796<!-- SS Modern Footer --> 3797<style> 3798/* SS Modern Footer */ 3799#ssStaticFooterRoot, #ssStaticFooterRoot footer.ss-modern-footer { 3800 --ss-primary: #1f485e; 3801 --ss-accent: #1879a4; 3802 --ss-dark: #035e7f; 3803 --ss-highlight: #00a8e1; 3804 --ss-max: 1280px; 3805 font-family: 'Poppins', sans-serif; 3806 line-height: 1.6; 3807 } 3808 #ssStaticFooterRoot *, #ssStaticFooterRoot *::before, #ssStaticFooterRoot *::after { box-sizing: border-box; } 3809 #ssStaticFooterRoot a { color: inherit; text-decoration: none; } 3810 #ssStaticFooterRoot img { max-width: 100%; display: block; } 3811 #ssStaticFooterRoot .wrap { width: min(100% - 2rem, var(--ss-max)); margin-inline: auto; } 3812 #ssStaticFooterRoot .visually-hidden { 3813 position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; 3814 overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; 3815 } 3816 3817 #ssStaticFooterRoot footer.ss-modern-footer { 3818 background: var(--ss-primary); color: #fff; padding: 2rem 0 0; 3819 } 3820 #ssStaticFooterRoot .footer-main { padding-bottom: 1.25rem; } 3821 #ssStaticFooterRoot .footer-main-grid { 3822 display: grid; 3823 grid-template-columns: minmax(0, 1fr) minmax(18.5rem, 23.5rem); 3824 gap: 1.75rem 2rem; align-items: start; 3825 } 3826 #ssStaticFooterRoot .footer-brand-block { 3827 margin-bottom: 1.1rem; padding-bottom: 1rem; 3828 border-bottom: 1px solid rgba(255,255,255,.12); 3829 } 3830 #ssStaticFooterRoot .footer-brand-link { 3831 display: inline-flex; align-items: center; gap: .75rem; 3832 color: #fff; margin-bottom: .6rem; 3833 } 3834 #ssStaticFooterRoot .footer-brand-link img { 3835 width: 52px; height: 52px; object-fit: cover; border-radius: 6px; 3836 flex-shrink: 0; background: #fff; 3837 } 3838 #ssStaticFooterRoot .footer-brand-name { 3839 font-size: 1.3125rem; font-weight: 700; letter-spacing: -.01em; line-height: 1.1; 3840 } 3841 #ssStaticFooterRoot .logo-server { color: var(--ss-highlight); } 3842 #ssStaticFooterRoot .logo-source { color: rgba(255,255,255,.72); } 3843 #ssStaticFooterRoot .footer-tagline { 3844 font-size: .875rem; line-height: 1.55; color: rgba(255,255,255,.88); 3845 max-width: 36rem; margin: 0; 3846 } 3847 #ssStaticFooterRoot .footer-nav-columns { 3848 display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); 3849 gap: 1rem 1.75rem; margin-bottom: 1rem; 3850 } 3851 #ssStaticFooterRoot .footer-nav-heading { 3852 font-size: .75rem; font-weight: 700; letter-spacing: .02em; 3853 color: #fff; margin: 0 0 .5rem; 3854 } 3855 #ssStaticFooterRoot .footer-link-list { list-style: none; margin: 0; padding: 0; } 3856 #ssStaticFooterRoot .footer-link-list li { margin: 0 0 .28rem; } 3857 #ssStaticFooterRoot .footer-link-list a { 3858 font-size: .875rem; line-height: 1.5; color: rgba(255,255,255,.88); 3859 } 3860 #ssStaticFooterRoot .footer-link-list a:hover { color: #fff; text-decoration: underline; } 3861 #ssStaticFooterRoot .footer-social { 3862 display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; 3863 } 3864 #ssStaticFooterRoot .footer-social-label { font-size: .8125rem; font-weight: 700; color: #fff; } 3865 #ssStaticFooterRoot .footer-social-links { display: flex; gap: .5rem; } 3866 #ssStaticFooterRoot .footer-social-links a { 3867 display: inline-flex; align-items: center; justify-content: center; 3868 width: 2.25rem; height: 2.25rem; border-radius: 50%; 3869 background: rgba(255,255,255,.12); color: #fff; 3870 } 3871 #ssStaticFooterRoot .footer-social-links svg { width: 1rem; height: 1rem; fill: currentColor; } 3872 #ssStaticFooterRoot .footer-panel { 3873 background: rgba(255,255,255,.97); color: var(--ss-primary); 3874 border-radius: 8px; padding: .85rem 1rem; 3875 box-shadow: 0 8px 20px rgba(0,0,0,.1); font-size: .8125rem; 3876 } 3877 #ssStaticFooterRoot .footer-panel-block { 3878 padding-bottom: .7rem; margin-bottom: .7rem; 3879 border-bottom: 1px solid rgba(31,72,94,.1); 3880 } 3881 #ssStaticFooterRoot .footer-panel-block:last-child { 3882 padding-bottom: 0; margin-bottom: 0; border-bottom: none; 3883 } 3884 #ssStaticFooterRoot .footer-panel-heading { font-size: .75rem; font-weight: 700; margin: 0 0 .4rem; } 3885 #ssStaticFooterRoot .footer-panel-address { 3886 font-style: normal; font-size: .75rem; line-height: 1.45; 3887 color: #3d5566; margin: 0 0 .35rem; 3888 } 3889 #ssStaticFooterRoot .footer-panel-map { 3890 display: inline-block; margin: 0 0 .5rem; 3891 font-size: .75rem; color: var(--ss-accent); 3892 } 3893 #ssStaticFooterRoot .footer-panel-map:hover { text-decoration: underline; } 3894 #ssStaticFooterRoot .footer-panel-quick { 3895 margin: 0; font-size: .7rem; font-weight: 600; 3896 } 3897 #ssStaticFooterRoot .footer-panel-quick a { color: var(--ss-accent); } 3898 #ssStaticFooterRoot .footer-panel-sep { color: #9ab0be; margin: 0 .25rem; } 3899 #ssStaticFooterRoot .footer-panel-note { 3900 margin: .45rem 0 0; font-size: .625rem; color: #6b7c8a; 3901 } 3902 #ssStaticFooterRoot .footer-panel-note a { color: var(--ss-accent); } 3903 #ssStaticFooterRoot .footer-signup-native { 3904 display: flex; flex-direction: row; flex-wrap: nowrap; 3905 align-items: stretch; gap: .5rem; width: 100%; 3906 } 3907 #ssStaticFooterRoot .footer-signup-native__email { 3908 flex: 1 1 auto; min-width: 0; padding: .65rem .85rem; 3909 border: 1px solid #c5d4de; border-radius: 6px; 3910 background: #fff; color: #1a2332; 3911 font: 400 .875rem 'Poppins', sans-serif; 3912 } 3913 #ssStaticFooterRoot .footer-signup-native__btn { 3914 flex: 0 0 auto; padding: .65rem 1.1rem; 3915 border: none; border-radius: 6px; 3916 background: var(--ss-primary); color: #fff; 3917 font: 600 .8125rem 'Poppins', sans-serif; 3918 cursor: pointer; min-height: 2.5rem; white-space: nowrap; 3919 } 3920 #ssStaticFooterRoot .footer-signup-hubspot-mount, 3921 #ssStaticFooterRoot #ssStaticFooterHubspotForm { 3922 position: absolute; width: 1px; height: 1px; 3923 margin: -1px; overflow: hidden; clip: rect(0,0,0,0); 3924 visibility: hidden; opacity: 0; pointer-events: none; 3925 } 3926 #ssStaticFooterRoot .footer-signup-success { 3927 margin-top: .65rem; font-size: .8125rem; font-weight: 600; 3928 color: #1f5c38; padding: .5rem .65rem; background: #e8f5ec; border-radius: 6px; 3929 } 3930 #ssStaticFooterRoot .footer-trust { 3931 padding: .9rem 0 1.25rem; 3932 border-top: 1px solid rgba(255,255,255,.12); 3933 } 3934 #ssStaticFooterRoot .footer-trust-inner { 3935 display: flex; flex-wrap: wrap; 3936 align-items: center; justify-content: space-between; 3937 gap: .75rem 1.5rem; 3938 } 3939 #ssStaticFooterRoot .footer-trust-logo { 3940 display: block; height: 104px; width: auto; 3941 max-width: min(100%, 520px); object-fit: contain; object-position: left center; 3942 } 3943 #ssStaticFooterRoot .footer-trust-legal { 3944 margin: 0; font-size: .6875rem; line-height: 1.45; 3945 color: rgba(255,255,255,.88); text-align: right; max-width: 28rem; 3946 } 3947 3948 @media (max-width: 1100px) { 3949 #ssStaticFooterRoot .footer-main-grid { grid-template-columns: 1fr; } 3950 #ssStaticFooterRoot .footer-panel { max-width: 23.5rem; } 3951 #ssStaticFooterRoot .footer-trust-legal { text-align: left; max-width: none; } 3952 } 3953 @media (max-width: 768px) { 3954 #ssStaticFooterRoot .footer-nav-columns { grid-template-columns: 1fr; } 3955 #ssStaticFooterRoot .footer-panel { max-width: none; } 3956 #ssStaticFooterRoot .footer-trust-inner { flex-direction: column; align-items: flex-start; } 3957 } 3958 3959/* SS Page Theme - align static Shopify pages with ServerSource modern theme */ 3960/* SS Page Theme â footer-safe extras only (chrome lives in ss-static-chrome-critical.css) */ 3961 3962#hubspot-messages-iframe-container, 3963#hs-web-interactives-embed-container { 3964 z-index: 999999 !important; 3965} 3966 3967body.contact-flyout-open #hubspot-messages-iframe-container { 3968 right: min(calc(24rem + 3.25rem), calc(100vw - 1rem)) !important; 3969 transition: right 0.45s cubic-bezier(0.4, 0, 0.2, 1); 3970} 3971 3972</style> 3973<div id="ssStaticFooterRoot" class="ss-page-paste-footer"> 3974 <footer class="ss-modern-footer" role="contentinfo"> 3975 <div class="wrap footer-main"> 3976 <div class="footer-main-grid"> 3977 <div class="footer-main-left"> 3978 <div class="footer-brand-block"> 3979 <a href="https://www.serversource.co.uk/" class="footer-brand-link"> 3980 <img src="https://cdn.shopify.com/s/files/1/0587/2150/1393/files/logo-ServerSource-sq.jpg?v=1686233809" alt="" width="52" height="52">
3981 <span class="footer-brand-name"><span class="logo-server">Server</span><span class="logo-source">Source</span></span> 3982 </a> 3983 <p class="footer-tagline">Dell EMC servers, storage and networking, trusted since 1996.</p> 3984 </div> 3985 3986 <div class="footer-nav-columns"> 3987 <div class="footer-nav-col"> 3988 <h3 class="footer-nav-heading">Info</h3> 3989 <ul class="footer-link-list"> 3990 <li><a href="https://shop.serversource.eu/configure/">Configure Your Server</a></li> 3991 <li><a href="https://www.serversource.co.uk/pages/rack-and-stack-professional-deploy">ServerSource Deploy</a></li> 3992 <li><a href="https://www.serversource.co.uk/pages/serversource-advanced-raid-calculator">Raid Calculator</a></li> 3993 <li><a href="https://www.serversource.co.uk/pages/sell-to-serversource">Sell to Us</a></li> 3994 </ul> 3995 </div> 3996 <div class="footer-nav-col"> 3997 <h3 class="footer-nav-heading">Support</h3> 3998 <ul class="footer-link-list"> 3999 <li><a href="https://www.serversource.co.uk/pages/contact">Contact Us</a></li> 4000 <li><a href="https://www.serversource.co.uk/pages/faq">FAQs</a></li> 4001 <li><a href="https://www.serversource.co.uk/pages/warranty">Warranty Renewal</a></li> 4002 <li><a href="https://www.serversource.co.uk/pages/shipping-information-for-eu-eea-member-states">International Shipping</a></li> 4003 </ul> 4004 </div> 4005 <div class="footer-nav-col"> 4006 <h3 class="footer-nav-heading">Company</h3> 4007 <ul class="footer-link-list"> 4008 <li><a href="https://www.serversource.co.uk/pages/about-us">About Us</a></li> 4009 <li><a href="https://www.serversource.co.uk/blogs/news">News & Insights</a></li> 4010 <li><a href="https://www.serversource.co.uk/pages/terms-and-conditions">Terms & Conditions</a></li> 4011 <li><a href="https://www.serversource.co.uk/pages/privacy-policy">Privacy Policy</a></li> 4012 </ul> 4013 </div> 4014 </div> 4015 4016 <div class="footer-social" aria-label="Follow ServerSource"> 4017 <span class="footer-social-label">Follow us</span> 4018 <div class="footer-social-links"> 4019 <a href="https://www.linkedin.com/company/serversource/" target="_blank" rel="noopener noreferrer" aria-label="LinkedIn"> 4020 <svg viewbox="0 0 448 512" width="16" height="16" aria-hidden="true"><path d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"></path></svg> 4021 </a> 4022 <a href="https://twitter.com/serversource" target="_blank" rel="noopener noreferrer" aria-label="X (Twitter)"> 4023 <svg viewbox="0 0 512 512" width="16" height="16" aria-hidden="true"><path d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z"></path></svg> 4024 </a> 4025 </div> 4026 </div> 4027 </div> 4028 4029 <div class="footer-panel"> 4030 <div class="footer-panel-block footer-panel-block--contact"> 4031 <h3 class="footer-panel-heading">Contact</h3> 4032 <address class="footer-panel-address"> 4033 ServerSource House, 2 Perth House<br> 4034 Corby Gate Business Park,<br> 4035 Weldon North Industrial Estate<br> 4036 Corby, Northamptonshire, NN17 5JG 4037 </address> 4038 <a class="footer-panel-map" href="https://www.google.com/maps/place/ServerSource/@52.5029504,-0.6509609,17z/data=!3m1!4b1!4m6!3m5!1s0x48779c9f76d37203:0x6eea37391fc2bdb7!8m2!3d52.5029472!4d-0.648386!16s%2Fg%2F1yh9vg2l_?entry=ttu" target="_blank" rel="noopener noreferrer">View on map</a> 4039 <p class="footer-panel-quick"> 4040 <a href="tel:01536274950" class="footer-panel-tel">01536 274 950</a>
4041 <span class="footer-panel-sep" aria-hidden="true">·</span> 4042 <a href="mailto:[email protected]">[email protected]</a> 4043 </p> 4044 </div> 4045 <div class="footer-panel-block footer-panel-block--signup"> 4046 <h3 class="footer-panel-heading">Stay in touch</h3> 4047 <div class="footer-signup-native"> 4048 <label class="visually-hidden" for="ssStaticFooterSignupEmail">Email</label> 4049 <input type="email" id="ssStaticFooterSignupEmail" class="footer-signup-native__email" placeholder="Your email address" autocomplete="email" required> 4050 <button type="button" class="footer-signup-native__btn" id="ssStaticFooterSignupBtn">Sign Up</button> 4051 </div> 4052 <div class="footer-signup-hubspot-mount" id="ssStaticFooterHubspotForm" aria-hidden="true"></div> 4053 <p class="footer-signup-success" id="ssStaticFooterSignupSuccess" hidden>Thanks â you're signed up.</p> 4054 <p class="footer-panel-note">By signing up you agree to marketing emails. See our <a href="https://www.serversource.co.uk/pages/privacy-policy">Privacy Policy</a>.</p> 4055 </div> 4056 </div> 4057 </div> 4058 </div> 4059 4060 <div class="wrap footer-trust"> 4061 <div class="footer-trust-inner"> 4062 <img class="footer-trust-logo" src="https://cdn.shopify.com/s/files/1/0587/2150/1393/files/authorised_partner.png?v=1763632025" alt="Dell Technologies Authorised Partner" loading="lazy" width="400" height="104"> 4063 <p class="footer-trust-legal">© 2026 ServerSource. All rights reserved. Company No. 3277942 · VAT 849 774 168</p> 4064 </div> 4065 </div> 4066 </footer> 4067</div> 4068
4069<script src="https://cdn.shopify.com/s/files/1/0587/2150/1393/files/ss-hubspot-phone-gb.js?v=7" defer></script>
vendor: 1 bytes, line 4069
4069
4070<script src="https://js.hsforms.net/forms/embed/20213111.js" defer></script>
4070 4071<style id="ss-contact-btn-lock"> 4072.ss-contact-page a.ss-contact-page__btn, 4073.ss-contact-page button.ss-contact-page__btn, 4074.ss-contact-page .ss-contact-page__submit, 4075#main-content.ss-contact-page a.ss-contact-page__btn, 4076#main-content.ss-contact-page button.ss-contact-page__btn, 4077#main-content.ss-contact-page .ss-contact-page__submit { 4078 display: flex !important; 4079 align-items: center !important; 4080 justify-content: center !important; 4081 text-align: center !important; 4082 text-transform: none !important; 4083 background: #1879a4 !important; 4084 background-image: none !important; 4085 color: #fff !important; 4086 border: none !important; 4087 box-shadow: none !important; 4088 filter: none !important; 4089} 4090.ss-contact-page a.ss-contact-page__btn:hover, 4091.ss-contact-page button.ss-contact-page__btn:hover, 4092.ss-contact-page .ss-contact-page__submit:hover, 4093#main-content.ss-contact-page a.ss-contact-page__btn:hover, 4094#main-content.ss-contact-page button.ss-contact-page__btn:hover, 4095#main-content.ss-contact-page .ss-contact-page__submit:hover { 4096 background: #146a8f !important; 4097 color: #fff !important; 4098 box-shadow: none !important; 4099} 4100 4101.ss-contact-page__guarantee-band, 4102#main-content.ss-contact-page .ss-contact-page__guarantee-band { 4103 background: #1879a4 !important; 4104 background-image: none !important; 4105} 4106 4107.contact-flyout { 4108 display: flex !important; 4109 flex-direction: row !important; 4110 align-items: center !important; 4111 position: fixed !important; 4112 right: 0 !important; 4113 top: 50% !important; 4114 z-index: 2147483000 !important; 4115 pointer-events: auto !important; 4116 overflow: visible !important; 4117 transform: translateY(-50%) translateX(calc(100% - 2.875rem)) !important; 4118 transition: transform .45s cubic-bezier(.4, 0, .2, 1) !important; 4119} 4120.contact-flyout.is-open,
4121.contact-flyout:has(#contactFlyoutToggle:checked) { 4122 transform: translateY(-50%) translateX(0) !important; 4123} 4124.contact-flyout-tab, 4125.contact-flyout-panel { 4126 pointer-events: auto !important; 4127} 4128.contact-flyout-panel { 4129 width: 24rem !important; 4130 max-width: calc(100vw - 4rem) !important; 4131 opacity: 1 !important; 4132 overflow: hidden !important; 4133 scrollbar-width: none !important; 4134 -ms-overflow-style: none !important; 4135} 4136.contact-flyout-panel::-webkit-scrollbar { 4137 width: 0 !important; 4138 height: 0 !important; 4139 display: none !important; 4140} 4141@media (max-width: 640px) { 4142 .contact-flyout { 4143 top: auto !important; 4144 bottom: 1rem !important; 4145 transform: translateX(calc(100% - 2.875rem)) !important; 4146 } 4147 .contact-flyout.is-open, 4148 .contact-flyout:has(#contactFlyoutToggle:checked) { 4149 transform: translateX(0) !important; 4150 } 4151} 4152 4153.ss-nav-search-toggle { 4154 pointer-events: auto !important; 4155 cursor: pointer !important; 4156} 4157.ss-nav-search-panel.active, 4158.ss-nav-search:has(#ssNavSearchToggleBox:checked) .ss-nav-search-panel { 4159 opacity: 1 !important; 4160 visibility: visible !important; 4161 pointer-events: auto !important; 4162 transform: translateY(0) !important; 4163 position: fixed !important; 4164 top: 4.75rem !important; 4165 right: 0.75rem !important; 4166 left: auto !important; 4167 z-index: 2147483000 !important; 4168} 4169 4170/* Desktop nav: hide mobile-only Close + Call, even when Shopify body has no ss-* class */ 4171.ss-modern-header-wrap .nav-close-btn, 4172.ss-modern-header-wrap .shop-nav-footer { 4173 display: none !important; 4174} 4175@media (max-width: 1100px) { 4176 .ss-modern-header-wrap .nav-close-btn { 4177 display: flex !important; 4178 } 4179 .ss-modern-header-wrap .shop-nav-footer { 4180 display: block !important; 4181 } 4182} 4183</style> 4184 4185
4185<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
4185 4186</body> 4187</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.