CINXE.COM
HAProxy Enterprise | World's Fastest Software Load Balancer
<!doctype html> <html class="scroll-smooth" lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="alternate" type="application/rss+xml" title="HAProxy Enterprise" href="https://www.haproxy.com/feed"> <link rel="preconnect" href="https://cdn.haproxy.com/" crossorigin > <link rel="dns-prefetch" href="https://cdn.haproxy.com/" > <script src="https://bmrg.haproxy.com/boomerang-restiming.min3.js" defer></script> <script> document.addEventListener("onBoomerangLoaded", function(event) { BOOMR.init({ beacon_url: 'https://cdnrum2.haproxy.com:5443/beacon', beacon_type: 'POST' }); }); </script> <title> HAProxy Enterprise | World's Fastest Software Load Balancer </title> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Organization", "url": "https://www.haproxy.com", "logo": "/assets/our_logos/svg/haproxy-horizontal.svg", "name": "HAProxy Technologies", "sameAs": [ "https://www.facebook.com/haproxy.technologies/", "https://www.linkedin.com/company/haproxy-technologies", "https://twitter.com/haproxy" ], "contactPoint": [ { "@type": "ContactPoint", "name": "HAProxy Technologies", "telephone": "+1-844-222-4340", "contactType": "technical support", "areaServed": "US", "availableLanguage": [ "English" ] }, { "@type": "ContactPoint", "name": "HAProxy Technologies", "telephone": "+33-130676074", "contactType": "technical support", "areaServed": "EU", "availableLanguage": [ "English", "French" ] } ] } </script> <script type="application/ld+json"> {"@context":"https://schema.org", "@graph":[ { "@type":"WebSite", "@id":"https://www.haproxy.com/#website", "url":"https://www.haproxy.com", "name":"HAProxy Technologies", "description":"HAProxy Enterprise combines HAProxy, the world’s fastest open source software load balancer, with enterprise class features, services, and premium support.", "potentialAction":[ { "@type":"SearchAction", "target":"https://www.haproxy.com/?s={search_term_string}", "query-input":"required name=search_term_string" }], "inLanguage":"en-US" }, { "@type":"WebPage", "@id":"https://www.haproxy.com/products/haproxy-enterprise#webpage", "url":"https://www.haproxy.com/products/haproxy-enterprise", "name":"HAProxy Enterprise | World's Fastest Software Load Balancer", "isPartOf":"https://www.haproxy.com", "datePublished":"2022-08-26T12:00:00+00:00", "dateModified":"2025-01-09T12:44:56+00:00", "description":"[HAProxy Technologies] HAProxy Enterprise combines HAProxy, the world’s fastest open source software load balancer, with enterprise class features, services, and premium support.", "inLanguage":"en-US", "potentialAction":[ { "@type":"ReadAction", "target":["https://www.haproxy.com/products/haproxy-enterprise"] } ] } ] } </script> <meta name="description" content="HAProxy Enterprise combines HAProxy, the world’s fastest open source software load balancer, with enterprise class features, services, and premium support."> <meta name="robots" content="index, follow"> <meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1" > <meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1" > <link rel="alternate" hreflang="en" href="https://www.haproxy.com/products/haproxy-enterprise"> <link rel="alternate" hreflang="fr" href="https://www.haproxy.com/fr/products/haproxy-enterprise"> <link rel="alternate" hreflang="de" href="https://www.haproxy.com/de/products/haproxy-enterprise"> <link rel="canonical" href="https://www.haproxy.com/products/haproxy-enterprise"> <meta property="og:site_name" content="HAProxy Technologies"> <meta property="og:type" content="website"> <meta property="og:locale" content="en_US"> <meta property="og:url" content="https://www.haproxy.com/products/haproxy-enterprise"> <meta property="article:modified_time" content=" 2025-01-09T12:44:56+00:00" > <meta property="article:publisher" content="https://www.facebook.com/haproxy.technologies/" > <meta property="og:title" content=" HAProxy Enterprise | World's Fastest Software Load Balancer "> <meta property="og:description" content="HAProxy Enterprise combines HAProxy, the world’s fastest open source software load balancer, with enterprise class features, services, and premium support."> <meta property="og:image" content="https://www.haproxy.com/img/containers/assets/haproxy-enterprise-featured-image.png/7b76d82158e99fe59568c8bb7f6efae4/haproxy-enterprise-featured-image.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="600"> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:creator" content="@haproxy"> <meta name="twitter:site" content="@haproxy"> <meta name="twitter:title" content=" HAProxy Enterprise | World's Fastest Software Load Balancer "> <meta name="twitter:description" content="HAProxy Enterprise combines HAProxy, the world’s fastest open source software load balancer, with enterprise class features, services, and premium support."> <meta name="twitter:image" content="https://www.haproxy.com/img/containers/assets/haproxy-enterprise-featured-image.png/7b76d82158e99fe59568c8bb7f6efae4/haproxy-enterprise-featured-image.png"> <script> function getCookie(cname) { let name = cname + "="; let decodedCookie = decodeURIComponent(document.cookie); let ca = decodedCookie.split(";"); for (let i = 0; i < ca.length; i++) { let c = ca[i]; while (c.charAt(0) == " ") { c = c.substring(1); } if (c.indexOf(name) == 0) { return c.substring(name.length, c.length); } } return ""; } window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag("consent", "default", { 'ad_user_data': 'denied', 'ad_personalization': 'denied', 'ad_storage': 'denied', 'analytics_storage': 'denied', 'functionality_storage': 'granted', 'wait_for_update': 500 }); gtag("consent", "update", { 'ad_user_data': (localStorage.getItem('cookieBannerAdUserData') === 'true' || getCookie('GDIR') === 'pass') ? 'granted' : 'denied', 'ad_personalization': (localStorage.getItem('cookieBannerAdPersonalization') === 'true' || getCookie('GDIR') === 'pass') ? 'granted' : 'denied', 'ad_storage': (localStorage.getItem('cookieBannerAdStorage') === 'true' || getCookie('GDIR') === 'pass') ? 'granted' : 'denied', 'analytics_storage': (localStorage.getItem('cookieBannerAnalyticsStorage') === 'true' || getCookie('GDIR') === 'pass') ? 'granted' : 'denied', 'functionality_storage': 'granted' }); (function (w, d, s, l, i) { w[l] = w[l] || []; w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-W9N2N3S'); </script> <link rel="icon" href="https://cdn.haproxy.com/assets/our_logos/haproxy-icon.svg" type="image/svg+xml"> <link rel="mask-icon" href="https://cdn.haproxy.com/assets/our_logos/haproxy-icon.svg" color="#000000"> <link rel="apple-touch-icon" href="https://cdn.haproxy.com/favicons/apple-touch-icon.png"> <link rel="preload" href="https://cdn.haproxy.com/assets/css/fonts.css?id=f0cda333dd17acd22f16246fe21c417a" as="style" onload="this.onload=null;this.rel='stylesheet'"> <noscript><link rel="stylesheet" href="https://cdn.haproxy.com/assets/css/fonts.css?id=f0cda333dd17acd22f16246fe21c417a"></noscript> <script defer data-domain="www.haproxy.com" src="https://plausible.io/js/script.tagged-events.file-downloads.js"></script> <style> /*! tailwindcss v3.4.4 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #d9dfe5;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#a0afbd;opacity:1}input::placeholder,textarea::placeholder{color:#a0afbd;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}.flickity-slider .carousel-cell{height:600px;opacity:0;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,1,1)}.flickity-slider .carousel-cell .section{display:none}.flickity-slider .carousel-cell.is-selected{opacity:1;transition-duration:0ms}.flickity-slider .carousel-cell.is-selected .section{display:block}.beelist ul{list-style-image:url(/assets/loady/desktop/get-to-know-loady-bee-bullet.png);margin-left:2rem!important}.beelist ul li{padding-left:.5rem!important}.loady-bg{--tw-bg-opacity:1;background:#071c42;background:linear-gradient(90deg,#071c42,#0b2758 15%,#0b2758 85%,#071c42);background-color:rgb(30 58 138/var(--tw-bg-opacity));background-image:url(https://cdn.haproxy.com/assets/loady-bg-center-loadie.png);background-position-x:center;background-repeat:no-repeat;background-size:1920px auto;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#071c42",endColorstr="#071c42",GradientType=1);margin-left:auto;margin-right:auto;overflow:hidden;position:relative}.loady-bg:before{background:url(/assets/loady/desktop/loady-bg-left-desktop.png) no-repeat top left 100%;background-size:100%;left:0}.loady-bg:after,.loady-bg:before{content:"";height:100%;position:absolute;top:0;width:800px;z-index:0}.loady-bg:after{background:url(/assets/loady/desktop/loady-bg-right-desktop.png) no-repeat top right 100%;background-size:100%;right:0}@media screen and (max-width:1620px){.loady-bg:before{background:url(/assets/loady/desktop/loady-bg-left-desktop.png) no-repeat top left 100%;background-size:100%;left:auto;right:50%}.loady-bg:after,.loady-bg:before{content:"";height:100%;position:absolute;top:0;width:800px;z-index:0}.loady-bg:after{background:url(/assets/loady/desktop/loady-bg-right-desktop.png) no-repeat top right 100%;background-size:100%;left:50%;right:auto}}.\!font-main{font-family:Lexend,Helvetica,Arial,Lucida,sans-serif!important}.font-main{font-family:Lexend,Helvetica,Arial,Lucida,sans-serif}.\!font-base{font-family:Inter,Helvetica,Arial,Lucida,sans-serif!important}.font-base{font-family:Inter,Helvetica,Arial,Lucida,sans-serif}@media (max-width:639px){.block-sm{display:block!important}.flex-sm{display:flex!important}.inline-sm{display:inline!important}}sub,sup{font-size:60%}sup{top:-.41em}sub{bottom:0}.newsbar{--tw-bg-opacity:1;background-color:rgb(0 38 77/var(--tw-bg-opacity));font-size:.875rem}.newsbar,.newsbar .newsbar__text a{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.newsbar .newsbar__text a,.newsbar .newsbar__text a:hover{text-decoration-line:underline}.newsbar .newsbar__text a:hover{--tw-text-opacity:1;color:rgb(128 209 255/var(--tw-text-opacity))}.newsbar .newsbar__localemenu{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity));line-height:35px;list-style-type:none!important}.newsbar .newsbar__localemenu .newsbar__localemenu--item{font-weight:700;margin-bottom:0;padding-left:.5rem;padding-right:.5rem}.newsbar .newsbar__localemenu .newsbar__localemenu--popover{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);background-color:rgb(0 38 77/var(--tw-bg-opacity));border-bottom-width:1px;border-color:rgb(191 228 255/var(--tw-border-opacity));border-left-width:1px;border-right-width:1px;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.newsbar a{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.newsbar a:hover{text-decoration-line:none}.newsbar p{margin-bottom:0!important}#mainheader{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);background-color:rgb(255 255 255/var(--tw-bg-opacity));border-bottom-width:1px;border-color:rgb(237 240 242/var(--tw-border-opacity));box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);position:fixed;width:100%;z-index:50}@media (min-width:768px){#mainheader{top:35px}}#mainheader .main-nav{align-items:center;display:flex;flex-direction:row;height:100%}@media (min-width:768px){#mainheader .main-nav{padding-right:1rem}}#mainheader .main-nav .main-nav__item .main-nav__item--link{--tw-text-opacity:1;color:rgb(47 78 109/var(--tw-text-opacity));cursor:pointer;display:block;font-family:Lexend,Helvetica,Arial,Lucida,sans-serif;font-size:14px!important;font-weight:500;line-height:66px!important;min-height:66px;padding-left:.5rem;padding-right:.5rem;text-transform:uppercase}#mainheader .main-nav .main-nav__item .main-nav__item--link:hover{--tw-bg-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity))}@media (min-width:1080px){#mainheader .main-nav .main-nav__item .main-nav__item--link{font-size:.875rem}}@media (min-width:1280px){#mainheader .main-nav .main-nav__item .main-nav__item--link{font-size:1.125rem}}#mainheader .main-nav .main-nav__item .active{--tw-bg-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity))}#mainheader .main-nav .main-nav__item .main-nav__item--gethaproxy small{--tw-text-opacity:1;color:rgb(127 146 165/var(--tw-text-opacity));display:block;font-size:.75rem;margin-top:-3px}footer#mainfooter a{color:#fff}footer#mainfooter .copyright a{color:#666}#mainfooter{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(12 21 30/var(--tw-bg-opacity));border-top-width:4px;color:rgb(255 255 255/var(--tw-text-opacity));margin-top:0}#mainfooter a:hover{text-decoration-line:none}.featured-resources a,h1 .featured-resources a,h1 .featured-resources a a,h2 .featured-resources a,h2 .featured-resources a a,h3 .featured-resources a,h3 .featured-resources a a,h4 .featured-resources a,h4 .featured-resources a a,h5 .featured-resources a,h5 .featured-resources a a,h6 .featured-resources a,h6 .featured-resources a a{--tw-text-opacity:1;color:rgb(17 138 237/var(--tw-text-opacity))}.featured-resources a:hover{text-decoration-line:none}.text-defaultcolor{--tw-text-opacity:1;color:rgb(47 78 109/var(--tw-text-opacity))}.text-heading,.text-heading a{--tw-text-opacity:1;color:rgb(0 38 77/var(--tw-text-opacity))}.text-heading a:hover{text-decoration-line:none}.text-heading a:hover,.text-leading{--tw-text-opacity:1;color:rgb(87 112 138/var(--tw-text-opacity))}.text-leading{font-weight:500;line-height:1.25}.text-leading a{--tw-text-opacity:1;color:rgb(87 112 138/var(--tw-text-opacity))}.text-leading a:hover{--tw-text-opacity:1;color:rgb(160 175 189/var(--tw-text-opacity));text-decoration-line:none}.text-highlight{--tw-text-opacity:1;color:rgb(17 138 237/var(--tw-text-opacity))}.text-heading-footer{--tw-text-opacity:1;color:rgb(0 57 115/var(--tw-text-opacity));font-size:1.25rem;margin-bottom:.5rem;margin-top:1.75rem;padding-bottom:.5rem}body{--tw-text-opacity:1;-webkit-font-smoothing:antialiased;color:rgb(47 78 109/var(--tw-text-opacity));font-family:Inter,Helvetica,Arial,Lucida,sans-serif;line-height:1.75}.color-primary,.text-primary{color:#0479d9}.bg-gray{--tw-bg-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity))}h1,h2,h3,h4,h5,h6{font-family:Lexend,Helvetica,Arial,Lucida,sans-serif}h1,h1 a,h2,h2 a,h3,h3 a,h4,h4 a,h5,h5 a,h6,h6 a{--tw-text-opacity:1;color:rgb(0 38 77/var(--tw-text-opacity))}h1 a:hover,h2 a:hover,h3 a:hover,h4 a:hover,h5 a:hover,h6 a:hover{--tw-text-opacity:1;color:rgb(87 112 138/var(--tw-text-opacity));text-decoration-line:none}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.25}h1 .text-highlight,h1 .text-highlight a,h2 .text-highlight,h2 .text-highlight a,h3 .text-highlight,h3 .text-highlight a,h4 .text-highlight,h4 .text-highlight a,h5 .text-highlight,h5 .text-highlight a,h6 .text-highlight,h6 .text-highlight a{--tw-text-opacity:1;color:rgb(17 138 237/var(--tw-text-opacity))}h1{font-size:2.25rem;margin-bottom:1rem;margin-top:2rem}h2{margin-top:1.75rem}h2,h3{font-size:1.5rem;margin-bottom:1rem}h3{margin-top:1.5rem}h4{font-size:1.25rem;margin-bottom:1rem;margin-top:1.25rem}h5,h6{font-size:1.125rem;margin-bottom:1rem;margin-top:1rem}@media (min-width:768px){h2{font-size:1.875rem;margin-bottom:1rem;margin-top:1.75rem}}p{margin:0 0 .75rem}a{color:rgb(17 138 237/var(--tw-text-opacity))}a,a:hover{--tw-text-opacity:1}a:hover{color:rgb(0 91 166/var(--tw-text-opacity));text-decoration-line:underline}.py-default{padding-bottom:2.25rem;padding-top:2.25rem}@media (min-width:768px){.py-default{padding-bottom:5rem;padding-top:5rem}}.pt-default{padding-top:2.25rem}@media (min-width:768px){.pt-default{padding-top:5rem}}.pb-default{padding-bottom:2.25rem}@media (min-width:768px){.pb-default{padding-bottom:5rem}}.px-default{padding-right:1.25rem}.pl-default,.px-default{padding-left:1.25rem}.pr-default{padding-right:1.25rem}.space-y-default>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(2.25rem*var(--tw-space-y-reverse));margin-top:calc(2.25rem*(1 - var(--tw-space-y-reverse)))}@media (min-width:768px){.space-y-default>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(5rem*var(--tw-space-y-reverse));margin-top:calc(5rem*(1 - var(--tw-space-y-reverse)))}}.supermenu-bg{background:#fff;background:linear-gradient(90deg,#fff,#fff 50%,#f0faff 0,#f0faff);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#f0faff",GradientType=1)}.menu-promo-bar a{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.menu-promo-bar a:hover{--tw-text-opacity:1;color:rgb(240 248 255/var(--tw-text-opacity))}#mobilenav a{font-family:Lexend,Helvetica,Arial,Lucida,sans-serif}ul:not(.slider):not(.list-none){list-style-type:disc;margin-left:1rem}ul:not(.slider):not(.list-none) li{margin-bottom:.5rem;padding-left:0}ul:not(.slider):not(.list-none) li p:last-child{margin-bottom:0}.btn{border-radius:.25rem;display:inline-block;font-size:1.125rem;font-weight:500;margin-bottom:1rem;margin-top:1rem;padding:1rem 1.5rem;transition-duration:.3s;width:auto}.btn:hover{text-decoration-line:none}.btn:focus{outline:2px solid transparent;outline-offset:2px}.btn-primary{--tw-bg-opacity:1;background-color:rgb(17 138 237/var(--tw-bg-opacity));border-radius:.25rem;display:inline-block;font-size:1.125rem;font-weight:500;margin-bottom:1rem;margin-top:1rem;padding:1rem 1.5rem;transition-duration:.3s;width:auto}.btn-primary:hover{text-decoration-line:none}.btn-primary:focus{outline:2px solid transparent;outline-offset:2px}.btn-primary{--tw-text-opacity:1;font-weight:700}.btn-primary,.btn-primary:hover{color:rgb(255 255 255/var(--tw-text-opacity))}.btn-primary:hover{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(0 91 166/var(--tw-bg-opacity))}.btn-secondary{border-radius:.25rem;display:inline-block;font-size:1.125rem;font-weight:500;margin-bottom:1rem;margin-top:1rem;padding:1rem 1.5rem;transition-duration:.3s;width:auto}.btn-secondary:hover{text-decoration-line:none}.btn-secondary:focus{outline:2px solid transparent;outline-offset:2px}.btn-secondary{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity));color:rgb(51 51 51/var(--tw-text-opacity))}.btn-secondary:hover{--tw-bg-opacity:1;background-color:rgb(211 212 213/var(--tw-bg-opacity))}.btn-transparent{border-radius:.25rem;color:#0479d9;display:inline-block;font-size:1.125rem;font-weight:500;margin-bottom:1rem;margin-top:1rem;padding:1rem 1.5rem;transition-duration:.3s;width:auto}.btn-transparent:hover{text-decoration-line:none}.btn-transparent:focus{outline:2px solid transparent;outline-offset:2px}.btn-transparent:hover{--tw-text-opacity:1;color:rgb(52 93 139/var(--tw-text-opacity))}.btn-contrast{border-radius:.25rem;display:inline-block;font-size:1.125rem;font-weight:500;margin-bottom:1rem;margin-top:1rem;padding:1rem 1.5rem;transition-duration:.3s;width:auto}.btn-contrast:hover{text-decoration-line:none}.btn-contrast:focus{outline:2px solid transparent;outline-offset:2px}.btn-contrast,.btn-contrast:hover{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(242 198 87/var(--tw-bg-opacity));color:rgb(51 51 51/var(--tw-text-opacity))}.post-content ul:not(.slider){list-style-type:disc;margin-left:1rem;padding:0}.post-content main>*{grid-column:span 12/span 12;margin-bottom:1.25rem}@media (min-width:768px){.post-content main>*{grid-column:span 10/span 10;grid-column-start:2}}.post-content main>:first-child{margin-top:0!important}.post-content main .expanded{grid-column:span 12/span 12}.post-content .gist table tbody>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:calc(0px*var(--tw-divide-y-reverse));border-top-width:calc(0px*(1 - var(--tw-divide-y-reverse)))}.post-content .gist .gist-file{--tw-border-opacity:1;border-color:rgb(237 240 242/var(--tw-border-opacity))}.post-content .gist .gist-data{--tw-bg-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity));border-radius:.25rem;border-style:none}.post-content .gist .blob-wrapper{padding:10px 0}.post-content .gist .blob-code-inner{font-size:.875rem}.post-content .gist .highlight{--tw-bg-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity));font-family:Droid Sans Mono,monospace}.post-content .gist .highlight td{padding:1px 10px}.post-content .gist .highlight tr{padding:0}.post-content .gist .pl-pds,.post-content .gist .pl-s,.post-content .gist .pl-s .pl-pse .pl-s1,.post-content .gist .pl-sr,.post-content .gist .pl-sr .pl-cce,.post-content .gist .pl-sr .pl-sra,.post-content .gist .pl-sr .pl-sre{color:green}.post-content .gist .blob-num{border-top:0;padding:0!important;width:0}.post-content .gist .gist-meta{display:none}.post-content .darktheme .gist .gist-file{--tw-border-opacity:1;border-color:rgb(237 240 242/var(--tw-border-opacity));border-width:1px}.post-content .darktheme .gist .gist-data{background-color:#212529}.post-content .darktheme .gist .blob-code-inner{color:#f1f1f1}.post-content .darktheme .gist .highlight{background-color:#212529}.post-content .darktheme .gist .pl-c{color:#d3d3d3!important}.post-content .darktheme .gist .pl-k{color:#569cd6!important}.post-content .darktheme .gist .pl-en{color:#7fb4e0!important}.post-content .darktheme .gist .pl-c1,.post-content .darktheme .gist .pl-s .pl-v{color:#add8e6!important}.post-content .darktheme .gist .pl-pds{color:#fff!important}.post-content .darktheme .gist .pl-pds,.post-content .darktheme .gist .pl-s,.post-content .darktheme .gist .pl-s .pl-pse .pl-s1,.post-content .darktheme .gist .pl-sr,.post-content .darktheme .gist .pl-sr .pl-cce,.post-content .darktheme .gist .pl-sr .pl-sra,.post-content .darktheme .gist .pl-sr .pl-sre{color:#00b300!important}.post-content .darktheme .gist .pl-s .pl-s1,.post-content .darktheme .gist .pl-smi{color:orange}.post-content .gist{position:relative}.post-content .darktheme .gist .gist-file{background:#212529;border-color:#212529;padding-top:10px}.post-content .gist .gist-file{background:#f9f9f9;padding-top:10px}.post-content .gist .gist-meta{display:block!important;height:0;padding:0;text-indent:-9999px}.post-content .gist .gist-meta a:first-child{--tw-border-opacity:1!important;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity));border-color:rgb(237 240 242/var(--tw-border-opacity))!important;border-radius:.25rem;border-width:1px!important;color:rgb(127 146 165/var(--tw-text-opacity));display:block;padding:.25rem .5rem;position:absolute;right:.5rem;text-indent:0;top:.5rem}.post-content .darktheme .gist .gist-meta a:first-child{background:#212529;border-top:1px solid #212529;color:#afafaf;text-indent:0}.post-content .darktheme .gist .gist-meta a:first-child:hover{color:#fff}.post-content .gist .blob-wrapper table{border-style:none;margin:0}.post-content .darktheme .gist .gist-file,.post-content .gist .gist-file{padding-top:0!important}.post-content .blob-num.js-line-number:before{display:none}.post-content .blob-num.js-line-number{border:none!important}.post-content code{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(0 38 77/var(--tw-bg-opacity));border-radius:.25rem;color:rgb(255 255 255/var(--tw-text-opacity));font-size:.75rem;padding:.125rem .25rem}.post-content table{--tw-border-opacity:1;border-collapse:collapse;border-color:rgb(237 240 242/var(--tw-border-opacity));border-width:1px;width:100%}.post-content table tbody>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;--tw-divide-opacity:1;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-color:rgb(237 240 242/var(--tw-divide-opacity));border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}.post-content table td,.post-content table th{padding:.75rem}.post-content table p{margin:0!important;padding:0!important;text-align:left}.post-content .flickity-page-dots{bottom:10px}.post-content pre{--tw-border-opacity:1;border-color:rgb(237 240 242/var(--tw-border-opacity));border-radius:.25rem;border-width:1px;overflow:auto;padding:.75rem}.post-content pre,.post-content pre code{--tw-bg-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity))}.post-content pre code{--tw-text-opacity:1;border-radius:0;color:rgb(0 0 0/var(--tw-text-opacity));font-size:.75rem;padding:0}.post-content .did-you-know{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(240 248 255/var(--tw-bg-opacity));border-color:rgb(191 228 255/var(--tw-border-opacity));border-radius:.25rem;border-width:1px;padding:1rem}.post-content .did-you-know .did-you-know__title{--tw-text-opacity:1;color:rgb(4 121 217/var(--tw-text-opacity));font-size:.75rem;font-weight:700}.post-content .did-you-know p{font-size:.875rem;margin-bottom:0}.post-content .did-you-know ol,.post-content .did-you-know ul{list-style-type:disc;margin-left:1rem}.post-content .did-you-know ol li,.post-content .did-you-know ul li{margin-bottom:.5rem}.post-content .did-you-know ol{list-style-type:decimal}.post-content .did-you-know.warning{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(255 247 237/var(--tw-bg-opacity));border-color:rgb(255 237 213/var(--tw-border-opacity));border-width:1px}.post-content .did-you-know.warning .did-you-know__title{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity))}.post-content .did-you-know.danger{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity));border-color:rgb(239 68 68/var(--tw-border-opacity));border-width:1px}.post-content .did-you-know.danger .did-you-know__title{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity))}.news-content h1,.news-content h2,.news-content h3,.news-content h4,.news-content h5,.news-content h6{--tw-text-opacity:1;color:rgb(0 57 115/var(--tw-text-opacity))}.styled-form form [type=email],.styled-form form [type=tel],.styled-form form [type=text],.styled-form form select,.styled-form form textarea,.styled-form.server-form input{--tw-bg-opacity:1;background-color:rgb(240 248 255/var(--tw-bg-opacity));border-radius:0!important;font-size:14px;min-height:56px;padding:.75rem;width:100%}.hs_aloha_va_trial_consent.hs-aloha_va_trial_consent.hs-fieldtype-booleancheckbox.field.hs-form-field{margin-bottom:0;padding-left:.5rem;width:100%}.hapee-form #LEGAL_CONSENT\.processing-0c8c6d9c-4756-44fd-9eed-ebd92140033d{margin-top:5px}.hs-button.primary.large{--tw-bg-opacity:1;background-color:rgb(17 138 237/var(--tw-bg-opacity));border-radius:.25rem;display:inline-block;font-size:1.125rem;font-weight:500;margin-bottom:1rem;margin-top:1rem;padding:1rem 1.5rem;transition-duration:.3s;width:auto}.hs-button.primary.large:hover{text-decoration-line:none}.hs-button.primary.large:focus{outline:2px solid transparent;outline-offset:2px}.hs-button.primary.large{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity));font-weight:700}.hs-button.primary.large:hover{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(0 91 166/var(--tw-bg-opacity));color:rgb(255 255 255/var(--tw-text-opacity))}.hs-button.primary.large{display:block;margin-left:auto;margin-right:auto;padding:.5rem 2rem}.hs_LEGAL_CONSENT\.subscription_type_2972774.hs-LEGAL_CONSENT\.subscription_type_2972774.hs-fieldtype-booleancheckbox.field.hs-form-field{display:none}.styled-form input[type=checkbox]{--tw-border-opacity:1;border-color:rgb(87 112 138/var(--tw-border-opacity));border-radius:.125rem;margin-right:.75rem}.styled-form .inputs-list{align-items:center;display:flex;font-size:.75rem!important;margin-bottom:0!important}.styled-form .inputs-list li{margin:0;width:100%}.styled-form .legal-consent-container .hs-richtext{margin-bottom:.75rem}.styled-form .field label{display:none}.styled-form label.hs-form-booleancheckbox-display{display:block}.styled-form .hs-form-field{margin-bottom:.75rem}.styled-form .no-list.hs-error-msgs.inputs-list label{display:block}.styled-form [type=checkbox]{margin-top:4px}.styled-form .inputs-list{list-style:none!important}.styled-form .hs-input::-moz-placeholder{--tw-text-opacity:1;color:rgb(0 57 115/var(--tw-text-opacity))}.styled-form .hs-input::placeholder{--tw-text-opacity:1;color:rgb(0 57 115/var(--tw-text-opacity))}.styled-form select{--tw-text-opacity:1;color:rgb(0 57 115/var(--tw-text-opacity))}.styled-form .hs-input.invalid{--tw-border-opacity:1!important;border-color:rgb(239 68 68/var(--tw-border-opacity))!important}.styled-form .hs-error-msgs{margin-bottom:0}.styled-form .hs-error-msgs li{margin-bottom:0!important}.styled-form .hs-error-msg{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity));font-size:11px;font-style:normal;line-height:1.25;margin-top:.125rem}.hs_submit .actions{text-align:center}.hapee-form form{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between}.hapee-form form .hs_recaptcha{width:100%!important}.hapee-form form.hs-form>.hs-dependent-field,.hapee-form form.hs-form>.hs-form-field{width:100%}@media (min-width:640px){.hapee-form form.hs-form>.hs-dependent-field,.hapee-form form.hs-form>.hs-form-field{width:50%}}.hapee-form .hbspt-form .field label{display:block;font-size:.75rem;font-weight:700;text-transform:uppercase}.hapee-form .hs-form .hs-form-field>label{--tw-text-opacity:1;color:rgb(32 63 119/var(--tw-text-opacity));display:block!important;font-size:.75rem;font-weight:600;margin-bottom:.5rem;text-transform:uppercase}.hapee-form.nolabel .hs-form .hs-form-field>label{display:none!important}@media (min-width:768px){.hapee-form .hs-dependent-field,.hapee-form .hs_company,.hapee-form .hs_email,.hapee-form .hs_firstname,.hapee-form .hs_lastname,.hapee-form .hs_phone{padding-left:.25rem;padding-right:.25rem}}.hapee-form .inputs-list,.styled-form .inputs-list{--tw-text-opacity:1;color:rgb(87 112 138/var(--tw-text-opacity));font-size:.75rem!important;margin-left:0!important}.hapee-form .legal-consent-container .hs-richtext{margin-bottom:0!important}.hapee-form .legal-consent-container{padding-left:.25rem;padding-right:.25rem}.hapee-form form .hs-fieldtype-textarea.hs-form-field{padding-left:.25rem;padding-right:.25rem;width:100%}input[type=file]::file-selector-button{--tw-border-opacity:1!important;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(240 248 255/var(--tw-bg-opacity));border-color:rgb(191 228 255/var(--tw-border-opacity))!important;border-bottom-color:rgb(191 228 255/var(--tw-border-opacity))!important;border-radius:.375rem;border-style:solid;border-width:1px;color:rgb(17 24 39/var(--tw-text-opacity));inset:0;margin-right:.75rem;padding:.25rem .5rem}header div>ul>li>a{text-transform:uppercase}footer .copyright{font-size:80%}footer.dark-footer .copyright a{color:#666}.indent-text h2,.indent-text h3,.indent-text ol,.indent-text p,.indent-text ul{padding-left:2rem;padding-right:2rem}.products-overview__product-item{cursor:pointer;position:relative}.products-overview__product-item:hover:before{opacity:1}.products-overview__product-item:before{--tw-translate-x:-50%;--tw-translate-y:-50%;--tw-bg-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity));border-radius:.25rem;content:"";height:calc(100% + 10px);left:50%;opacity:0;position:absolute;top:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1);width:calc(100% - 10px)}header .supermenu-item{margin-bottom:1.5rem}header .supermenu-item p{margin:0}header .supermenu-item a{color:#3f6da4;display:block;font-family:Lexend,Helvetica,Arial,Lucida,sans-serif;margin-top:0}header .supermenu-item a:hover{color:#0f87eb}header .section-heading{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity));font-size:.875rem;font-weight:500;margin-bottom:1.5rem}header .dark-menu .section-heading{--tw-text-opacity:1;color:rgb(7 89 133/var(--tw-text-opacity))}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(4,121,217,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(4,121,217,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }#maincontent{min-height:calc(100vh - 820px)}#maincontent.blank{min-height:calc(100vh - 190px)}.nop>p:last-child,.nope p{margin-bottom:0!important}body>footer .socialico path{fill:#fff}.calendly-inline-widget{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}#main-footer-top p{font-size:14px;margin-bottom:5px}body>header a:hover{text-decoration:none}.hasnumlist ol{list-style-type:decimal;padding-left:1.5rem}.hasnumlist ol ::marker{color:#003973;font-size:1.25rem;font-weight:700}.hasnumlist ol::marker{color:#003973;font-size:1.25rem;font-weight:700}.pagination{border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.1);display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;list-style-type:none;margin:auto!important;padding:0!important;width:-moz-fit-content;width:fit-content}.pagination li a,.pagination li span{background:linear-gradient(180deg,#fff,#ecf4ff);box-shadow:inset 1px 1px 0 1px #fff;display:block;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ecf4ff",GradientType=1);line-height:36px;min-height:36px;min-width:36px;text-align:center}.pagination li{background:#fff;border:1px solid #f1f1f1;border-left:0;display:block;margin:0!important}.pagination li a:hover{background:#fff;background:linear-gradient(180deg,#fff,#fbfdff);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#fbfdff",GradientType=1);text-decoration:none}.pagination li.active span{font-weight:700}.pagination li.active span,.pagination li.disabled span{background:#fff;background:linear-gradient(0deg,#fff,#f2f6fb);box-shadow:none;color:#ccc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#f2f6fb",GradientType=1);text-shadow:1px 1px 1px #fff}.pagination li:first-child{border-bottom-left-radius:4px;border-left:1px solid #f1f1f1;border-top-left-radius:4px}.pagination li:last-child{border-bottom-right-radius:4px;border-top-right-radius:4px}.arrowlist ul li::marker{color:rgb(22 163 74/var(--tw-text-opacity));content:"►"}.noul ul:last-child{margin-bottom:0!important}.custom-scroll-1::-webkit-scrollbar-track{background-color:#f5f5f5;border-radius:10px;-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.3)}.custom-scroll-1::-webkit-scrollbar{background-color:#f5f5f5;width:6px}.custom-scroll-1::-webkit-scrollbar-thumb{background-color:#555;border-radius:10px;-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.3)}.hs-input.invalid{border:1px solid red!important}.hs-error-msg{color:#f2545b;font-size:12px;font-style:italic}.hs-error-msgs{margin-top:4px}.hapee-form .hs-submit{margin:12px auto 0}.hapee-form .hs-submit .hs-button{background:#203f77;cursor:pointer;font-family:Montserrat,Helvetica,Arial,Lucida,sans-serif;margin:auto;text-align:center}.grecaptcha-badge{margin:auto!important}.legal-consent-container .hs-richtext p{font-size:12px;line-height:1.2rem}.inputs-list.multi-container input[type=checkbox]{height:10px;margin-right:10px;margin-top:0!important;width:10px}.inputs-list.multi-container li{align-items:center;display:flex}.inputs-list.multi-container{display:flex;flex-direction:column}#mobilenav li p a{color:#3f6da4}#mobilenav li p a:hover{color:#0f87eb}.flickity-slider{align-items:center;display:flex}#mobilenav *{transition:all .3s ease-out}.supermenu-item a[href="/meet-loady"]{align-items:center;display:flex!important;gap:.5rem}.supermenu-item a[href="/meet-loady"]:after{background:url(/assets/supermenu/loady/loady.svg) no-repeat 50%;content:"";display:inline-block;height:2rem;width:3rem}.container{margin-left:auto;margin-right:auto;width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1080px){.container{max-width:1080px}}.prose{color:#333;max-width:720px}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){line-height:1.75;margin-bottom:2rem;margin-top:2rem}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-bottom:1.2em;margin-top:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:#0479d9;font-weight:500;text-decoration:none}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)):hover{color:#0479d9;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-bottom:1.25em;margin-top:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-bottom:1.25em;margin-top:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-bottom:3em;margin-top:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){border-inline-start-color:var(--tw-prose-quote-borders);border-inline-start-width:.25rem;color:var(--tw-prose-quotes);font-style:italic;font-weight:500;margin-bottom:2rem;margin-top:2rem;padding-inline-start:1em;quotes:"\201C""\201D""\2018""\2019"}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-size:2.25em;font-weight:800;line-height:1.1111111;margin-bottom:.8888889em;margin-top:0}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-size:1.5em;font-weight:700;line-height:1.3333333;margin-bottom:1em;margin-top:2em}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-size:1.25em;font-weight:600;line-height:1.6;margin-bottom:.6em;margin-top:1.6em}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;line-height:1.5;margin-bottom:.5em;margin-top:1.5em}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-bottom:2em;margin-top:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows)/10%),0 3px 0 rgb(var(--tw-prose-kbd-shadows)/10%);color:var(--tw-prose-kbd);font-family:inherit;font-size:.875em;font-weight:500;padding-inline-end:.375em;padding-bottom:.1875em;padding-top:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:var(--tw-prose-pre-bg);border-radius:.375rem;color:var(--tw-prose-pre-code);font-size:.875em;font-weight:400;line-height:1.7142857;margin-bottom:1.7142857em;margin-top:1.7142857em;overflow-x:auto;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-top:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-radius:0;border-width:0;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.7142857;margin-bottom:2rem;margin-top:2rem;table-layout:auto;text-align:start;width:100%}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-color:var(--tw-prose-th-borders);border-bottom-width:1px}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em;vertical-align:bottom}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-color:var(--tw-prose-td-borders);border-bottom-width:1px}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-color:var(--tw-prose-th-borders);border-top-width:1px}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body:#374151;--tw-prose-headings:#00264d;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-kbd:#111827;--tw-prose-kbd-shadows:17 24 39;--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:255 255 255;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:rgba(0,0,0,.5);--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.5em;margin-top:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.75em;margin-top:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em;margin-top:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-top:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose :where(.slideshow):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2rem;margin-top:2rem}.prose :where(.did-you-know):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2rem;margin-top:2rem}.prose :where(#lightboxmodalgallery):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2rem;margin-top:2rem}.prose-lg{font-size:1.125rem;line-height:1.7777778}.prose-lg :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em}.prose-lg :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2222222em;line-height:1.4545455;margin-bottom:1.0909091em;margin-top:1.0909091em}.prose-lg :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.6666667em;margin-top:1.6666667em;padding-inline-start:1em}.prose-lg :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.6666667em;line-height:1;margin-bottom:.8333333em;margin-top:0}.prose-lg :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.6666667em;line-height:1.3333333;margin-bottom:1.0666667em;margin-top:1.8666667em}.prose-lg :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.3333333em;line-height:1.5;margin-bottom:.6666667em;margin-top:1.6666667em}.prose-lg :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){line-height:1.5555556;margin-bottom:.4444444em;margin-top:1.7777778em}.prose-lg :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-lg :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;font-size:.8888889em;padding-inline-end:.4444444em;padding-bottom:.2222222em;padding-top:.2222222em;padding-inline-start:.4444444em}.prose-lg :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-lg :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8666667em}.prose-lg :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-lg :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.375rem;font-size:.8888889em;line-height:1.75;margin-bottom:2em;margin-top:2em;padding-inline-end:1.5em;padding-bottom:1em;padding-top:1em;padding-inline-start:1.5em}.prose-lg :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-inline-start:1.5555556em}.prose-lg :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em;padding-inline-start:1.5555556em}.prose-lg :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.6666667em;margin-top:.6666667em}.prose-lg :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4444444em}.prose-lg :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4444444em}.prose-lg :where(.prose-lg>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.8888889em;margin-top:.8888889em}.prose-lg :where(.prose-lg>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose-lg>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(.prose-lg>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(.prose-lg>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em}.prose-lg :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.8888889em;margin-top:.8888889em}.prose-lg :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em;margin-top:1.3333333em}.prose-lg :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.prose-lg :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.6666667em;padding-inline-start:1.5555556em}.prose-lg :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:3.1111111em;margin-top:3.1111111em}.prose-lg :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.5}.prose-lg :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.75em;padding-bottom:.75em;padding-inline-start:.75em}.prose-lg :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-lg :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-lg :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.75em;padding-bottom:.75em;padding-top:.75em;padding-inline-start:.75em}.prose-lg :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-lg :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-lg :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.7777778em;margin-top:1.7777778em}.prose-lg :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-lg :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.5;margin-top:1em}.prose-lg :where(.prose-lg>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-lg :where(.prose-lg>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-xl{font-size:1.25rem;line-height:1.8}.prose-xl :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em}.prose-xl :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2em;line-height:1.5;margin-bottom:1em;margin-top:1em}.prose-xl :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.6em;margin-top:1.6em;padding-inline-start:1.0666667em}.prose-xl :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.8em;line-height:1;margin-bottom:.8571429em;margin-top:0}.prose-xl :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.8em;line-height:1.1111111;margin-bottom:.8888889em;margin-top:1.5555556em}.prose-xl :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.5em;line-height:1.3333333;margin-bottom:.6666667em;margin-top:1.6em}.prose-xl :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){line-height:1.6;margin-bottom:.6em;margin-top:1.8em}.prose-xl :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-xl :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.3125rem;font-size:.9em;padding-inline-end:.4em;padding-bottom:.25em;padding-top:.25em;padding-inline-start:.4em}.prose-xl :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-xl :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8611111em}.prose-xl :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-xl :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.5rem;font-size:.9em;line-height:1.7777778;margin-bottom:2em;margin-top:2em;padding-inline-end:1.3333333em;padding-bottom:1.1111111em;padding-top:1.1111111em;padding-inline-start:1.3333333em}.prose-xl :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em;padding-inline-start:1.6em}.prose-xl :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em;padding-inline-start:1.6em}.prose-xl :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.6em;margin-top:.6em}.prose-xl :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4em}.prose-xl :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4em}.prose-xl :where(.prose-xl>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.8em;margin-top:.8em}.prose-xl :where(.prose-xl>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.2em}.prose-xl :where(.prose-xl>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em}.prose-xl :where(.prose-xl>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.2em}.prose-xl :where(.prose-xl>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em}.prose-xl :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:.8em;margin-top:.8em}.prose-xl :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.2em;margin-top:1.2em}.prose-xl :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.2em}.prose-xl :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.6em;padding-inline-start:1.6em}.prose-xl :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2.8em;margin-top:2.8em}.prose-xl :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-xl :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-xl :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-xl :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-xl :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em;line-height:1.5555556}.prose-xl :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.6666667em;padding-bottom:.8888889em;padding-inline-start:.6666667em}.prose-xl :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-xl :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-xl :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.6666667em;padding-bottom:.8888889em;padding-top:.8888889em;padding-inline-start:.6666667em}.prose-xl :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-xl :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-xl :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:2em;margin-top:2em}.prose-xl :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0;margin-top:0}.prose-xl :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em;line-height:1.5555556;margin-top:1em}.prose-xl :where(.prose-xl>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-xl :where(.prose-xl>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.\!top-0{top:0!important}.-bottom-16{bottom:-4rem}.bottom-0{bottom:0}.bottom-16{bottom:4rem}.bottom-2{bottom:.5rem}.bottom-\[0px\]{bottom:0}.bottom-\[70px\]{bottom:70px}.left-0{left:0}.left-1\/2{left:50%}.left-4{left:1rem}.left-\[0px\]{left:0}.left-\[48\.5\%\]{left:48.5%}.right-0{right:0}.right-2{right:.5rem}.right-2\.5{right:.625rem}.right-3{right:.75rem}.right-\[0px\]{right:0}.top-0{top:0}.top-1\/2{top:50%}.top-3{top:.75rem}.top-\[120px\]{top:120px}.top-\[22\%\]{top:22%}.top-\[250px\]{top:250px}.top-\[29\%\]{top:29%}.top-\[35\%\]{top:35%}.top-\[35px\]{top:35px}.top-\[50\%\]{top:50%}.top-\[53\%\]{top:53%}.top-\[66px\]{top:66px}.top-\[67px\]{top:67px}.isolate{isolation:isolate}.-z-10{z-index:-10}.z-10{z-index:10}.z-30{z-index:30}.z-50{z-index:50}.z-\[10001\]{z-index:10001}.z-\[1000\]{z-index:1000}.z-\[10\]{z-index:10}.z-\[1\]{z-index:1}.z-\[40\]{z-index:40}.z-\[500\]{z-index:500}.z-\[60\]{z-index:60}.z-\[999\]{z-index:999}.col-span-10{grid-column:span 10/span 10}.col-span-2{grid-column:span 2/span 2}.col-span-3{grid-column:span 3/span 3}.col-span-6{grid-column:span 6/span 6}.col-span-8{grid-column:span 8/span 8}.col-span-full{grid-column:1/-1}.col-start-1{grid-column-start:1}.col-start-2{grid-column-start:2}.col-start-3{grid-column-start:3}.row-start-1{grid-row-start:1}.\!m-0{margin:0!important}.m-0{margin:0}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-3{margin:.75rem}.m-5{margin:1.25rem}.m-\[20px\]{margin:20px}.m-auto{margin:auto}.\!my-10{margin-bottom:2.5rem!important;margin-top:2.5rem!important}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.-mx-1\.5{margin-left:-.375rem;margin-right:-.375rem}.-mx-5{margin-left:-1.25rem;margin-right:-1.25rem}.-mx-8{margin-left:-2rem;margin-right:-2rem}.-my-1{margin-bottom:-.25rem;margin-top:-.25rem}.-my-1\.5{margin-bottom:-.375rem;margin-top:-.375rem}.mx-0{margin-left:0;margin-right:0}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-5{margin-left:1.25rem;margin-right:1.25rem}.mx-6{margin-left:1.5rem;margin-right:1.5rem}.mx-8{margin-left:2rem;margin-right:2rem}.mx-\[-1\.25rem\]{margin-left:-1.25rem;margin-right:-1.25rem}.mx-\[10\%\]{margin-left:10%;margin-right:10%}.mx-\[20px\]{margin-left:20px;margin-right:20px}.mx-\[5px\]{margin-left:5px;margin-right:5px}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-bottom:0;margin-top:0}.my-1{margin-bottom:.25rem;margin-top:.25rem}.my-10{margin-bottom:2.5rem;margin-top:2.5rem}.my-12{margin-bottom:3rem;margin-top:3rem}.my-2{margin-bottom:.5rem;margin-top:.5rem}.my-20{margin-bottom:5rem;margin-top:5rem}.my-3{margin-bottom:.75rem;margin-top:.75rem}.my-4{margin-bottom:1rem;margin-top:1rem}.my-5{margin-bottom:1.25rem;margin-top:1.25rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.my-8{margin-bottom:2rem;margin-top:2rem}.my-\[30px\]{margin-bottom:30px;margin-top:30px}.my-auto{margin-bottom:auto;margin-top:auto}.my-default{margin-bottom:2rem;margin-top:2rem}.\!mb-0{margin-bottom:0!important}.\!mb-1{margin-bottom:.25rem!important}.\!mb-2{margin-bottom:.5rem!important}.\!mb-3{margin-bottom:.75rem!important}.\!ml-0,.\!ml-\[0\]{margin-left:0!important}.\!mt-0{margin-top:0!important}.-mb-36{margin-bottom:-9rem}.-mb-40{margin-bottom:-10rem}.-mb-8{margin-bottom:-2rem}.-ml-1{margin-left:-.25rem}.-ml-6{margin-left:-1.5rem}.-ml-\[20px\]{margin-left:-20px}.-mr-\[20px\]{margin-right:-20px}.-mt-10{margin-top:-2.5rem}.-mt-12{margin-top:-3rem}.-mt-16{margin-top:-4rem}.-mt-4{margin-top:-1rem}.-mt-\[120px\]{margin-top:-120px}.-mt-\[12px\]{margin-top:-12px}.-mt-\[160px\]{margin-top:-160px}.-mt-\[3px\]{margin-top:-3px}.-mt-\[85px\]{margin-top:-85px}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-24{margin-bottom:6rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-\[-140px\]{margin-bottom:-140px}.mb-\[-200px\]{margin-bottom:-200px}.mb-\[-50px\]{margin-bottom:-50px}.mb-\[-6\.6\%\]{margin-bottom:-6.6%}.mb-\[10px\]{margin-bottom:10px}.mb-\[11px\]{margin-bottom:11px}.mb-\[130px\]{margin-bottom:130px}.mb-\[15px\]{margin-bottom:15px}.mb-\[20px\]{margin-bottom:20px}.mb-\[2px\]{margin-bottom:2px}.mb-\[4px\]{margin-bottom:4px}.mb-default{margin-bottom:2rem}.ml-0{margin-left:0}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-5{margin-left:1.25rem}.ml-6{margin-left:1.5rem}.ml-\[-200px\]{margin-left:-200px}.ml-\[1px\]{margin-left:1px}.ml-\[25\%\]{margin-left:25%}.ml-\[300px\]{margin-left:300px}.ml-\[3px\]{margin-left:3px}.ml-auto{margin-left:auto}.mr-0{margin-right:0}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mr-5{margin-right:1.25rem}.mr-6{margin-right:1.5rem}.mr-\[-50px\]{margin-right:-50px}.mr-\[50px\]{margin-right:50px}.mr-auto{margin-right:auto}.mr-default{margin-right:2rem}.ms-2{margin-inline-start:.5rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-36{margin-top:9rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.mt-9{margin-top:2.25rem}.mt-\[-140px\]{margin-top:-140px}.mt-\[-30px\]{margin-top:-30px}.mt-\[-50px\]{margin-top:-50px}.mt-\[-53px\]{margin-top:-53px}.mt-\[11px\]{margin-top:11px}.mt-\[120px\]{margin-top:120px}.mt-\[2rem\]{margin-top:2rem}.mt-\[3px\]{margin-top:3px}.mt-\[40px\]{margin-top:40px}.mt-auto{margin-top:auto}.mt-default{margin-top:2rem}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.\!inline{display:inline!important}.inline{display:inline}.\!flex{display:flex!important}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.\!hidden{display:none!important}.hidden{display:none}.h-0{height:0}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-20{height:5rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[100\%\]{height:100%}.h-\[100px\]{height:100px}.h-\[100vh\]{height:100vh}.h-\[120px\]{height:120px}.h-\[14px\]{height:14px}.h-\[150px\]{height:150px}.h-\[15px\]{height:15px}.h-\[16px\]{height:16px}.h-\[180px\]{height:180px}.h-\[18px\]{height:18px}.h-\[200px\]{height:200px}.h-\[22px\]{height:22px}.h-\[23px\]{height:23px}.h-\[24px\]{height:24px}.h-\[27px\]{height:27px}.h-\[32px\]{height:32px}.h-\[35px\]{height:35px}.h-\[36px\]{height:36px}.h-\[420px\]{height:420px}.h-\[42px\]{height:42px}.h-\[49px\]{height:49px}.h-\[4px\]{height:4px}.h-\[51px\]{height:51px}.h-\[56px\]{height:56px}.h-\[5px\]{height:5px}.h-\[64px\]{height:64px}.h-\[65px\]{height:65px}.h-\[70px\]{height:70px}.h-\[75px\]{height:75px}.h-\[7px\]{height:7px}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-60{max-height:15rem}.max-h-\[120px\]{max-height:120px}.max-h-\[350px\]{max-height:350px}.max-h-\[400px\]{max-height:400px}.max-h-\[40px\]{max-height:40px}.max-h-\[42px\]{max-height:42px}.max-h-\[50px\]{max-height:50px}.max-h-\[80\%\]{max-height:80%}.max-h-\[80px\]{max-height:80px}.max-h-full{max-height:100%}.min-h-\[148px\]{min-height:148px}.min-h-\[240px\]{min-height:240px}.min-h-\[420px\]{min-height:420px}.min-h-\[50vh\]{min-height:50vh}.min-h-\[530px\]{min-height:530px}.min-h-\[66px\]{min-height:66px}.min-h-\[auto\]{min-height:auto}.\!w-60{width:15rem!important}.w-0{width:0}.w-1{width:.25rem}.w-1\/12{width:8.333333%}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-1\/4{width:25%}.w-1\/5{width:20%}.w-10{width:2.5rem}.w-10\/12{width:83.333333%}.w-11{width:2.75rem}.w-16{width:4rem}.w-2\/12{width:16.666667%}.w-2\/4{width:50%}.w-24{width:6rem}.w-3{width:.75rem}.w-3\/12{width:25%}.w-3\/4{width:75%}.w-3\/5{width:60%}.w-32{width:8rem}.w-4{width:1rem}.w-4\/5{width:80%}.w-5{width:1.25rem}.w-5\/12{width:41.666667%}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-7\/12{width:58.333333%}.w-8{width:2rem}.w-8\/12{width:66.666667%}.w-80{width:20rem}.w-9{width:2.25rem}.w-9\/12{width:75%}.w-\[100px\]{width:100px}.w-\[100vw\]{width:100vw}.w-\[120px\]{width:120px}.w-\[128px\]{width:128px}.w-\[15\%\]{width:15%}.w-\[150px\]{width:150px}.w-\[15px\]{width:15px}.w-\[16px\]{width:16px}.w-\[180px\]{width:180px}.w-\[20px\]{width:20px}.w-\[22px\]{width:22px}.w-\[23px\]{width:23px}.w-\[24px\]{width:24px}.w-\[27px\]{width:27px}.w-\[300px\]{width:300px}.w-\[32px\]{width:32px}.w-\[400px\]{width:400px}.w-\[50\%\]{width:50%}.w-\[50px\]{width:50px}.w-\[51px\]{width:51px}.w-\[530px\]{width:530px}.w-\[58px\]{width:58px}.w-\[60\%\]{width:60%}.w-\[60px\]{width:60px}.w-\[64px\]{width:64px}.w-\[65px\]{width:65px}.w-\[70\%\]{width:70%}.w-\[750px\]{width:750px}.w-\[7px\]{width:7px}.w-\[80\%\]{width:80%}.w-\[830px\]{width:830px}.w-\[85\%\]{width:85%}.w-\[8px\]{width:8px}.w-\[90px\]{width:90px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-10{min-width:2.5rem}.min-w-\[100px\]{min-width:100px}.min-w-\[120px\]{min-width:120px}.min-w-\[260px\]{min-width:260px}.min-w-\[530px\]{min-width:530px}.min-w-\[58px\]{min-width:58px}.min-w-\[830px\]{min-width:830px}.min-w-\[90px\]{min-width:90px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[100\%\]{max-width:100%}.max-w-\[1000px\]{max-width:1000px}.max-w-\[100px\]{max-width:100px}.max-w-\[116px\]{max-width:116px}.max-w-\[120px\]{max-width:120px}.max-w-\[128px\]{max-width:128px}.max-w-\[1440px\]{max-width:1440px}.max-w-\[150px\]{max-width:150px}.max-w-\[160px\]{max-width:160px}.max-w-\[200px\]{max-width:200px}.max-w-\[230px\]{max-width:230px}.max-w-\[240px\]{max-width:240px}.max-w-\[250px\]{max-width:250px}.max-w-\[260px\]{max-width:260px}.max-w-\[26rem\]{max-width:26rem}.max-w-\[280px\]{max-width:280px}.max-w-\[300px\]{max-width:300px}.max-w-\[320px\]{max-width:320px}.max-w-\[32px\]{max-width:32px}.max-w-\[350px\]{max-width:350px}.max-w-\[35rem\]{max-width:35rem}.max-w-\[40\%\]{max-width:40%}.max-w-\[400px\]{max-width:400px}.max-w-\[408px\]{max-width:408px}.max-w-\[450px\]{max-width:450px}.max-w-\[460px\]{max-width:460px}.max-w-\[480px\]{max-width:480px}.max-w-\[50\%\]{max-width:50%}.max-w-\[500px\]{max-width:500px}.max-w-\[50px\]{max-width:50px}.max-w-\[51px\]{max-width:51px}.max-w-\[550px\]{max-width:550px}.max-w-\[60\%\]{max-width:60%}.max-w-\[600px\]{max-width:600px}.max-w-\[60px\]{max-width:60px}.max-w-\[640px\]{max-width:640px}.max-w-\[64px\]{max-width:64px}.max-w-\[70\%\]{max-width:70%}.max-w-\[720px\]{max-width:720px}.max-w-\[780px\]{max-width:780px}.max-w-\[80\%\]{max-width:80%}.max-w-\[800px\]{max-width:800px}.max-w-\[920px\]{max-width:920px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-screen-2xl{max-width:1536px}.max-w-screen-lg{max-width:1080px}.max-w-screen-xl{max-width:1280px}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.table-auto{table-layout:auto}.border-separate{border-collapse:separate}.border-spacing-0{--tw-border-spacing-x:0px;--tw-border-spacing-y:0px;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}.origin-top-right{transform-origin:top right}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.translate-y-0{--tw-translate-y:0px}.rotate-180,.translate-y-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.scroll-py-2{scroll-padding-bottom:.5rem;scroll-padding-top:.5rem}.list-inside{list-style-position:inside}.\!list-none{list-style-type:none!important}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-flow-row{grid-auto-flow:row}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.content-center{align-content:center}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.gap-x-1\.5{-moz-column-gap:.375rem;column-gap:.375rem}.gap-x-10{-moz-column-gap:2.5rem;column-gap:2.5rem}.gap-x-12{-moz-column-gap:3rem;column-gap:3rem}.gap-x-16{-moz-column-gap:4rem;column-gap:4rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-y-10{row-gap:2.5rem}.gap-y-4{row-gap:1rem}.gap-y-5{row-gap:1.25rem}.gap-y-8{row-gap:2rem}.-space-x-px>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(-1px*(1 - var(--tw-space-x-reverse)));margin-right:calc(-1px*var(--tw-space-x-reverse))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1rem*var(--tw-space-x-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(2rem*var(--tw-space-y-reverse));margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)))}.divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-left-width:calc(1px*(1 - var(--tw-divide-x-reverse)));border-right-width:calc(1px*var(--tw-divide-x-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}.divide-blue-100>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(191 228 255/var(--tw-divide-opacity))}.divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(237 240 242/var(--tw-divide-opacity))}.divide-primary-default>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(15 135 235/var(--tw-divide-opacity))}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.overflow-hidden{overflow:hidden}.overflow-clip{overflow:clip}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-scroll{overflow-y:scroll}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[4px\]{border-radius:4px}.rounded-\[6px\]{border-radius:6px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-xl{border-radius:.75rem}.rounded-b-\[6px\]{border-bottom-left-radius:6px;border-bottom-right-radius:6px}.rounded-b-lg{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.rounded-b-xl{border-bottom-left-radius:.75rem;border-bottom-right-radius:.75rem}.rounded-l-md{border-bottom-left-radius:.375rem;border-top-left-radius:.375rem}.rounded-r-md{border-bottom-right-radius:.375rem;border-top-right-radius:.375rem}.rounded-t-\[4px\]{border-top-left-radius:4px;border-top-right-radius:4px}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.rounded-br-lg{border-bottom-right-radius:.5rem}.rounded-tr-lg{border-top-right-radius:.5rem}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-4{border-width:4px}.border-\[10px\]{border-width:10px}.border-\[1px\]{border-width:1px}.border-\[2px\]{border-width:2px}.border-x{border-left-width:1px;border-right-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-b-4{border-bottom-width:4px}.border-b-\[1px\]{border-bottom-width:1px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4,.border-l-\[4px\]{border-left-width:4px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-r-\[1px\]{border-right-width:1px}.border-t{border-top-width:1px}.border-t-0{border-top-width:0}.border-t-2{border-top-width:2px}.border-t-4{border-top-width:4px}.border-t-8{border-top-width:8px}.border-t-\[0px\]{border-top-width:0}.border-t-\[10px\]{border-top-width:10px}.border-t-\[1px\]{border-top-width:1px}.border-t-\[2px\]{border-top-width:2px}.border-t-\[4px\]{border-top-width:4px}.border-t-\[6px\]{border-top-width:6px}.\!border-gray-100{--tw-border-opacity:1!important;border-color:rgb(237 240 242/var(--tw-border-opacity))!important}.\!border-red-600{--tw-border-opacity:1!important;border-color:rgb(220 38 38/var(--tw-border-opacity))!important}.\!border-transparent{border-color:transparent!important}.border-\[\#00b2ff\]{--tw-border-opacity:1;border-color:rgb(0 178 255/var(--tw-border-opacity))}.border-\[\#359fea\]{--tw-border-opacity:1;border-color:rgb(53 159 234/var(--tw-border-opacity))}.border-\[\#3f6da4\]{--tw-border-opacity:1;border-color:rgb(63 109 164/var(--tw-border-opacity))}.border-\[\#a2c4df\]{--tw-border-opacity:1;border-color:rgb(162 196 223/var(--tw-border-opacity))}.border-\[\#e2e2e2\]{--tw-border-opacity:1;border-color:rgb(226 226 226/var(--tw-border-opacity))}.border-\[\#e3e4e5\]{--tw-border-opacity:1;border-color:rgb(227 228 229/var(--tw-border-opacity))}.border-\[\#ededed\]{--tw-border-opacity:1;border-color:rgb(237 237 237/var(--tw-border-opacity))}.border-\[\#f2f3f8\]{--tw-border-opacity:1;border-color:rgb(242 243 248/var(--tw-border-opacity))}.border-black{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity))}.border-blue-100{--tw-border-opacity:1;border-color:rgb(191 228 255/var(--tw-border-opacity))}.border-blue-300{--tw-border-opacity:1;border-color:rgb(73 176 245/var(--tw-border-opacity))}.border-blue-400{--tw-border-opacity:1;border-color:rgb(17 138 237/var(--tw-border-opacity))}.border-blue-500{--tw-border-opacity:1;border-color:rgb(4 121 217/var(--tw-border-opacity))}.border-blue-800{--tw-border-opacity:1;border-color:rgb(0 38 77/var(--tw-border-opacity))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(237 240 242/var(--tw-border-opacity))}.border-gray-100\/90{border-color:rgba(237,240,242,.9)}.border-gray-200{--tw-border-opacity:1;border-color:rgb(217 223 229/var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(191 201 210/var(--tw-border-opacity))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(160 175 189/var(--tw-border-opacity))}.border-green-400{--tw-border-opacity:1;border-color:rgb(74 222 128/var(--tw-border-opacity))}.border-primary-dark{--tw-border-opacity:1;border-color:rgb(32 63 119/var(--tw-border-opacity))}.border-primary-default{--tw-border-opacity:1;border-color:rgb(15 135 235/var(--tw-border-opacity))}.border-red-400{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity))}.border-red-600{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.border-sky-300{--tw-border-opacity:1;border-color:rgb(125 211 252/var(--tw-border-opacity))}.border-slate-100{--tw-border-opacity:1;border-color:rgb(241 245 249/var(--tw-border-opacity))}.border-slate-400{--tw-border-opacity:1;border-color:rgb(148 163 184/var(--tw-border-opacity))}.border-slate-800{--tw-border-opacity:1;border-color:rgb(30 41 59/var(--tw-border-opacity))}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity))}.\!border-b-blue-500{--tw-border-opacity:1!important;border-bottom-color:rgb(4 121 217/var(--tw-border-opacity))!important}.\!border-b-gray-100{--tw-border-opacity:1!important;border-bottom-color:rgb(237 240 242/var(--tw-border-opacity))!important}.\!border-l-blue-400{--tw-border-opacity:1!important;border-left-color:rgb(17 138 237/var(--tw-border-opacity))!important}.border-b-gray-100{--tw-border-opacity:1;border-bottom-color:rgb(237 240 242/var(--tw-border-opacity))}.border-b-primary-default{--tw-border-opacity:1;border-bottom-color:rgb(15 135 235/var(--tw-border-opacity))}.border-l-blue-800{--tw-border-opacity:1;border-left-color:rgb(0 38 77/var(--tw-border-opacity))}.border-l-transparent{border-left-color:transparent}.border-t-\[\#0068b1\]{--tw-border-opacity:1;border-top-color:rgb(0 104 177/var(--tw-border-opacity))}.border-t-blue-400{--tw-border-opacity:1;border-top-color:rgb(17 138 237/var(--tw-border-opacity))}.border-t-blue-500{--tw-border-opacity:1;border-top-color:rgb(4 121 217/var(--tw-border-opacity))}.border-t-primary-default{--tw-border-opacity:1;border-top-color:rgb(15 135 235/var(--tw-border-opacity))}.\!bg-gray-50{--tw-bg-opacity:1!important;background-color:rgb(248 249 250/var(--tw-bg-opacity))!important}.\!bg-primary-default{--tw-bg-opacity:1!important;background-color:rgb(15 135 235/var(--tw-bg-opacity))!important}.\!bg-slate-100{background-color:rgb(241 245 249/var(--tw-bg-opacity))!important}.\!bg-slate-100,.\!bg-white{--tw-bg-opacity:1!important}.\!bg-white{background-color:rgb(255 255 255/var(--tw-bg-opacity))!important}.bg-\[\#00000052\]{background-color:#00000052}.bg-\[\#00264D\]{--tw-bg-opacity:1;background-color:rgb(0 38 77/var(--tw-bg-opacity))}.bg-\[\#003270\]{--tw-bg-opacity:1;background-color:rgb(0 50 112/var(--tw-bg-opacity))}.bg-\[\#005BA6\]{--tw-bg-opacity:1;background-color:rgb(0 91 166/var(--tw-bg-opacity))}.bg-\[\#00B2FF\]{--tw-bg-opacity:1;background-color:rgb(0 178 255/var(--tw-bg-opacity))}.bg-\[\#0e3d75\]{--tw-bg-opacity:1;background-color:rgb(14 61 117/var(--tw-bg-opacity))}.bg-\[\#0f87eb\]{--tw-bg-opacity:1;background-color:rgb(15 135 235/var(--tw-bg-opacity))}.bg-\[\#1087eb\]{--tw-bg-opacity:1;background-color:rgb(16 135 235/var(--tw-bg-opacity))}.bg-\[\#113b86\]{--tw-bg-opacity:1;background-color:rgb(17 59 134/var(--tw-bg-opacity))}.bg-\[\#15529B\]{--tw-bg-opacity:1;background-color:rgb(21 82 155/var(--tw-bg-opacity))}.bg-\[\#173374\]{--tw-bg-opacity:1;background-color:rgb(23 51 116/var(--tw-bg-opacity))}.bg-\[\#203f77\]{--tw-bg-opacity:1;background-color:rgb(32 63 119/var(--tw-bg-opacity))}.bg-\[\#215592\]{--tw-bg-opacity:1;background-color:rgb(33 85 146/var(--tw-bg-opacity))}.bg-\[\#2660a4\]{--tw-bg-opacity:1;background-color:rgb(38 96 164/var(--tw-bg-opacity))}.bg-\[\#2f358c\]{--tw-bg-opacity:1;background-color:rgb(47 53 140/var(--tw-bg-opacity))}.bg-\[\#313792\]{--tw-bg-opacity:1;background-color:rgb(49 55 146/var(--tw-bg-opacity))}.bg-\[\#333333ee\]{background-color:#333333ee}.bg-\[\#3862CB\]{--tw-bg-opacity:1;background-color:rgb(56 98 203/var(--tw-bg-opacity))}.bg-\[\#67ceba\]{--tw-bg-opacity:1;background-color:rgb(103 206 186/var(--tw-bg-opacity))}.bg-\[\#7FE8F7\]{--tw-bg-opacity:1;background-color:rgb(127 232 247/var(--tw-bg-opacity))}.bg-\[\#E3E9EE\]{--tw-bg-opacity:1;background-color:rgb(227 233 238/var(--tw-bg-opacity))}.bg-\[\#F8FAFF\]{--tw-bg-opacity:1;background-color:rgb(248 250 255/var(--tw-bg-opacity))}.bg-\[\#edeff7\]{--tw-bg-opacity:1;background-color:rgb(237 239 247/var(--tw-bg-opacity))}.bg-\[\#f0f7fc\]{--tw-bg-opacity:1;background-color:rgb(240 247 252/var(--tw-bg-opacity))}.bg-\[\#f1f7fc\]{--tw-bg-opacity:1;background-color:rgb(241 247 252/var(--tw-bg-opacity))}.bg-\[\#f2f3f8\]{--tw-bg-opacity:1;background-color:rgb(242 243 248/var(--tw-bg-opacity))}.bg-\[\#f4df47\]{--tw-bg-opacity:1;background-color:rgb(244 223 71/var(--tw-bg-opacity))}.bg-\[\#f4f4f4\]{--tw-bg-opacity:1;background-color:rgb(244 244 244/var(--tw-bg-opacity))}.bg-\[\#f4f9fc\]{--tw-bg-opacity:1;background-color:rgb(244 249 252/var(--tw-bg-opacity))}.bg-\[\#f6f9fc\]{--tw-bg-opacity:1;background-color:rgb(246 249 252/var(--tw-bg-opacity))}.bg-\[\#f7f7f8\]{--tw-bg-opacity:1;background-color:rgb(247 247 248/var(--tw-bg-opacity))}.bg-\[\#f8f9fa\]{--tw-bg-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity))}.bg-\[\#f8faff\]{--tw-bg-opacity:1;background-color:rgb(248 250 255/var(--tw-bg-opacity))}.bg-\[\#f9d2d2\]{--tw-bg-opacity:1;background-color:rgb(249 210 210/var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(191 228 255/var(--tw-bg-opacity))}.bg-blue-300{--tw-bg-opacity:1;background-color:rgb(73 176 245/var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(240 248 255/var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(4 121 217/var(--tw-bg-opacity))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(0 91 166/var(--tw-bg-opacity))}.bg-blue-700{--tw-bg-opacity:1;background-color:rgb(0 57 115/var(--tw-bg-opacity))}.bg-blue-800{--tw-bg-opacity:1;background-color:rgb(0 38 77/var(--tw-bg-opacity))}.bg-blue-800\/75{background-color:rgba(0,38,77,.75)}.bg-blue-900{--tw-bg-opacity:1;background-color:rgb(30 58 138/var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(237 240 242/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(217 223 229/var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(160 175 189/var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgb(127 146 165/var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity:1;background-color:rgb(47 78 109/var(--tw-bg-opacity))}.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity))}.bg-green-300{--tw-bg-opacity:1;background-color:rgb(134 239 172/var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity))}.bg-primary-dark{--tw-bg-opacity:1;background-color:rgb(32 63 119/var(--tw-bg-opacity))}.bg-primary-default{--tw-bg-opacity:1;background-color:rgb(15 135 235/var(--tw-bg-opacity))}.bg-primary-gray-light{--tw-bg-opacity:1;background-color:rgb(246 249 252/var(--tw-bg-opacity))}.bg-primary-light{--tw-bg-opacity:1;background-color:rgb(244 249 252/var(--tw-bg-opacity))}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity))}.bg-red-300{--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity))}.bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity))}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-opacity-75{--tw-bg-opacity:0.75}.\!bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))!important}.bg-\[url\(\'\/assets\/background-tile\.png\'\)\]{background-image:url(https://cdn.haproxy.com/assets/background-tile.png)}.bg-\[url\(\'\/assets\/migration_landing\/new\/review-bg\.svg\'\)\]{background-image:url(https://cdn.haproxy.com/assets/migration_landing/new/review-bg.svg)}.bg-\[url\(\'\/assets\/success-stories\/eddie-bijnen\.png\'\)\]{background-image:url(https://cdn.haproxy.com/assets/success-stories/eddie-bijnen.png)}.bg-\[url\(\'\/assets\/success-stories\/eric-martinson-bg\.jpg\'\)\]{background-image:url(https://cdn.haproxy.com/assets/success-stories/eric-martinson-bg.jpg)}.bg-\[url\(\/assets\/haproxy-2_6-carousel\.png\)\]{background-image:url(https://cdn.haproxy.com/assets/haproxy-2_6-carousel.png)}.bg-\[url\(\/assets\/haproxyconf-cfp-slide-02\.png\)\]{background-image:url(https://cdn.haproxy.com/assets/haproxyconf-cfp-slide-02.png)}.bg-\[url\(\/assets\/how-to-migrate-successfully-from-f5-to-haproxy-crop\.png\)\]{background-image:url(https://cdn.haproxy.com/assets/how-to-migrate-successfully-from-f5-to-haproxy-crop.png)}.bg-\[url\(\/assets\/secpagev2\/bg-pattern\.png\)\]{background-image:url(https://cdn.haproxy.com/assets/secpagev2/bg-pattern.png)}.bg-\[url\(\/assets\/user-spotlight\/user-spotlight-series\.png\)\]{background-image:url(https://cdn.haproxy.com/assets/user-spotlight/user-spotlight-series.png)}.bg-\[url\(http\:\/\/haproxy\.test\/assets\/gov\/nicolas-chaillan\.jpeg\)\]{background-image:url(http://haproxy.test/assets/gov/nicolas-chaillan.jpeg)}.bg-\[url\(http\:\/\/staging\.int\.haproxy\.com\/assets\/udp\/udp-load-balancing-image\.jpg\)\]{background-image:url(http://staging.int.haproxy.com/assets/udp/udp-load-balancing-image.jpg)}.bg-cube-pattern{background-image:url(https://cdn.haproxy.com/assets/tailwind-config/haproxy-fusion-pattern-background.png)}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-l{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.bg-gray-fade-to-bottom{background-image:linear-gradient(180deg,#f8faff,rgba(41,196,169,0) 60%)}.bg-square-background{background-image:url(https://cdn.haproxy.com/assets/tailwind-config/square-background.png),linear-gradient(90deg,#f0f6fc,#f6fdff)!important}.bg-user-spolight-pattern{background-image:url(https://cdn.haproxy.com/assets/user-spotlight/haproxy-user-spotlight-series-slider-carousel.png),linear-gradient(86deg,#313792,#1d235d 75%)}.\!from-white{--tw-gradient-from:#fff var(--tw-gradient-from-position)!important;--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position)!important;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)!important}.from-\[\#0F1250\]{--tw-gradient-from:#0f1250 var(--tw-gradient-from-position);--tw-gradient-to:rgba(15,18,80,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#1d235d\]{--tw-gradient-from:#1d235d var(--tw-gradient-from-position);--tw-gradient-to:rgba(29,35,93,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#243c5a\]{--tw-gradient-from:#243c5a var(--tw-gradient-from-position);--tw-gradient-to:rgba(36,60,90,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#313792\]{--tw-gradient-from:#313792 var(--tw-gradient-from-position);--tw-gradient-to:rgba(49,55,146,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#E9FFFF\]{--tw-gradient-from:#e9ffff var(--tw-gradient-from-position);--tw-gradient-to:rgba(233,255,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#F0F7FC\]{--tw-gradient-from:#f0f7fc var(--tw-gradient-from-position);--tw-gradient-to:rgba(240,247,252,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#e2f4ff\]{--tw-gradient-from:#e2f4ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(226,244,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#e2f5ff\]{--tw-gradient-from:#e2f5ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(226,245,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#e2f7fe\]{--tw-gradient-from:#e2f7fe var(--tw-gradient-from-position);--tw-gradient-to:rgba(226,247,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#efeded\]{--tw-gradient-from:#efeded var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,6%,93%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#f0f8ff\]{--tw-gradient-from:#f0f8ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(240,248,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#fcf0de\]{--tw-gradient-from:#fcf0de var(--tw-gradient-from-position);--tw-gradient-to:hsla(36,83%,93%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-\[\#ffffff\]{--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-300{--tw-gradient-from:#49b0f5 var(--tw-gradient-from-position);--tw-gradient-to:rgba(73,176,245,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-50{--tw-gradient-from:#f0f8ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(240,248,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-gray-50{--tw-gradient-from:#f8f9fa var(--tw-gradient-from-position);--tw-gradient-to:rgba(248,249,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-sky-200{--tw-gradient-from:#bae6fd var(--tw-gradient-from-position);--tw-gradient-to:rgba(186,230,253,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-white{--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-0\%{--tw-gradient-from-position:0%}.via-\[\#1d235d\]{--tw-gradient-to:rgba(29,35,93,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#1d235d var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-\[\#e2f4ff\]{--tw-gradient-to:rgba(226,244,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#e2f4ff var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-\[\#e2f5ff\]{--tw-gradient-to:rgba(226,245,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#e2f5ff var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-\[\#e2f7fe\]{--tw-gradient-to:rgba(226,247,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#e2f7fe var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-\[\#efeded\]{--tw-gradient-to:hsla(0,6%,93%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#efeded var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-\[\#fcf0de\]{--tw-gradient-to:hsla(36,83%,93%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fcf0de var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-\[\#ffffff\],.via-white{--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fff var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-20\%{--tw-gradient-via-position:20%}.\!to-slate-100{--tw-gradient-to:#f1f5f9 var(--tw-gradient-to-position)!important}.to-\[\#00b4b4\]{--tw-gradient-to:#00b4b4 var(--tw-gradient-to-position)}.to-\[\#0288cf\]{--tw-gradient-to:#0288cf var(--tw-gradient-to-position)}.to-\[\#169be2\]{--tw-gradient-to:#169be2 var(--tw-gradient-to-position)}.to-\[\#1d235d\]{--tw-gradient-to:#1d235d var(--tw-gradient-to-position)}.to-\[\#243c5a\]{--tw-gradient-to:#243c5a var(--tw-gradient-to-position)}.to-\[\#313792\]{--tw-gradient-to:#313792 var(--tw-gradient-to-position)}.to-\[\#46ABDE\]{--tw-gradient-to:#46abde var(--tw-gradient-to-position)}.to-\[\#499fdd\]{--tw-gradient-to:#499fdd var(--tw-gradient-to-position)}.to-\[\#599ad4\]{--tw-gradient-to:#599ad4 var(--tw-gradient-to-position)}.to-\[\#6ebee3\]{--tw-gradient-to:#6ebee3 var(--tw-gradient-to-position)}.to-\[\#70a6d8\]{--tw-gradient-to:#70a6d8 var(--tw-gradient-to-position)}.to-\[\#91d4d2\]{--tw-gradient-to:#91d4d2 var(--tw-gradient-to-position)}.to-\[\#C0E9FC\]{--tw-gradient-to:#c0e9fc var(--tw-gradient-to-position)}.to-\[\#e2f7fe\]{--tw-gradient-to:#e2f7fe var(--tw-gradient-to-position)}.to-\[\#f4c8cd\]{--tw-gradient-to:#f4c8cd var(--tw-gradient-to-position)}.to-\[\#f9c8c5\]{--tw-gradient-to:#f9c8c5 var(--tw-gradient-to-position)}.to-\[\#ffffff\]{--tw-gradient-to:#fff var(--tw-gradient-to-position)}.to-blue-100{--tw-gradient-to:#bfe4ff var(--tw-gradient-to-position)}.to-blue-900{--tw-gradient-to:#1e3a8a var(--tw-gradient-to-position)}.to-orange-100{--tw-gradient-to:#ffedd5 var(--tw-gradient-to-position)}.to-pink-100{--tw-gradient-to:#fce7f3 var(--tw-gradient-to-position)}.to-purple-100{--tw-gradient-to:#f3e8ff var(--tw-gradient-to-position)}.to-sky-100{--tw-gradient-to:#e0f2fe var(--tw-gradient-to-position)}.to-white{--tw-gradient-to:#fff var(--tw-gradient-to-position)}.to-70\%{--tw-gradient-to-position:70%}.bg-\[length\:1900px\]{background-size:1900px}.bg-cover{background-size:cover}.bg-\[50\%_top\]{background-position:50% top}.bg-bottom{background-position:bottom}.bg-center{background-position:50%}.bg-top{background-position:top}.bg-no-repeat{background-repeat:no-repeat}.bg-repeat-x{background-repeat:repeat-x}.fill-\[white\]{fill:#fff}.fill-black{fill:#000}.fill-white{fill:#fff}.object-cover{-o-object-fit:cover;object-fit:cover}.\!p-0{padding:0!important}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[20px\]{padding:20px}.px-0{padding-left:0;padding-right:0}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-12{padding-left:3rem;padding-right:3rem}.px-16{padding-left:4rem;padding-right:4rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-8{padding-left:2rem;padding-right:2rem}.px-\[10\%\]{padding-left:10%;padding-right:10%}.px-\[35px\]{padding-left:35px;padding-right:35px}.px-\[5\%\]{padding-left:5%;padding-right:5%}.px-\[5px\]{padding-left:5px;padding-right:5px}.py-0{padding-bottom:0;padding-top:0}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-10{padding-bottom:2.5rem;padding-top:2.5rem}.py-11{padding-bottom:2.75rem;padding-top:2.75rem}.py-12{padding-bottom:3rem;padding-top:3rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-20{padding-bottom:5rem;padding-top:5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.py-7{padding-bottom:1.75rem;padding-top:1.75rem}.py-8{padding-bottom:2rem;padding-top:2rem}.py-9{padding-bottom:2.25rem;padding-top:2.25rem}.py-\[15px\]{padding-bottom:15px;padding-top:15px}.py-\[5px\]{padding-bottom:5px;padding-top:5px}.\!pb-5{padding-bottom:1.25rem!important}.\!pl-0{padding-left:0!important}.\!pl-3{padding-left:.75rem!important}.\!pl-5{padding-left:1.25rem!important}.\!pr-12{padding-right:3rem!important}.\!pr-5{padding-right:1.25rem!important}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pb-14{padding-bottom:3.5rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pb-32{padding-bottom:8rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pb-8{padding-bottom:2rem}.pb-9{padding-bottom:2.25rem}.pb-\[0\.8rem\]{padding-bottom:.8rem}.pb-\[10px\]{padding-bottom:10px}.pb-\[116px\]{padding-bottom:116px}.pb-\[140px\]{padding-bottom:140px}.pb-\[200px\]{padding-bottom:200px}.pb-\[40px\]{padding-bottom:40px}.pb-\[50px\]{padding-bottom:50px}.pb-\[60px\]{padding-bottom:60px}.pb-\[80px\]{padding-bottom:80px}.pl-0{padding-left:0}.pl-12{padding-left:3rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pl-8{padding-left:2rem}.pl-\[20px\]{padding-left:20px}.pr-0{padding-right:0}.pr-12{padding-right:3rem}.pr-2{padding-right:.5rem}.pr-20{padding-right:5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pr-5{padding-right:1.25rem}.pr-6{padding-right:1.5rem}.pr-8{padding-right:2rem}.ps-6{padding-inline-start:1.5rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-10{padding-top:2.5rem}.pt-12{padding-top:3rem}.pt-14{padding-top:3.5rem}.pt-2{padding-top:.5rem}.pt-20{padding-top:5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pt-7{padding-top:1.75rem}.pt-8{padding-top:2rem}.pt-9{padding-top:2.25rem}.pt-\[100px\]{padding-top:100px}.pt-\[18px\]{padding-top:18px}.pt-\[40px\]{padding-top:40px}.pt-\[60px\]{padding-top:60px}.pt-\[67px\]{padding-top:67px}.pt-\[80px\]{padding-top:80px}.pt-md{padding-top:16px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-start{text-align:start}.text-end{text-align:end}.align-middle{vertical-align:middle}.\!font-serif{font-family:Georgia,Times New Roman,serif!important}.font-serif{font-family:Georgia,Times New Roman,serif}.\!text-\[14px\]{font-size:14px!important}.\!text-lg{font-size:1.125rem!important}.\!text-sm{font-size:.875rem!important}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.text-5xl{font-size:3rem}.text-6xl{font-size:3.75rem}.text-\[1\.75rem\]{font-size:1.75rem}.text-\[12px\]{font-size:12px}.text-\[14px\]{font-size:14px}.text-\[16px\]{font-size:16px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[20px\]{font-size:20px}.text-\[22px\]{font-size:22px}.text-\[24px\]{font-size:24px}.text-\[26px\]{font-size:26px}.text-\[28px\]{font-size:28px}.text-\[2rem\]{font-size:2rem}.text-\[30px\]{font-size:30px}.text-\[32px\]{font-size:32px}.text-\[50px\]{font-size:50px}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-sm{font-size:.875rem}.text-xl{font-size:1.25rem}.text-xs{font-size:.75rem}.\!font-bold{font-weight:700!important}.font-\[500\]{font-weight:500}.font-bold{font-weight:700}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.\!leading-\[66px\]{line-height:66px!important}.\!leading-none{line-height:1!important}.\!leading-tight{line-height:1.25!important}.leading-10{line-height:2.5rem}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-\[1\.3rem\]{line-height:1.3rem}.leading-\[21px\]{line-height:21px}.leading-\[26px\]{line-height:26px}.leading-\[28px\]{line-height:28px}.leading-\[29px\]{line-height:29px}.leading-\[32px\]{line-height:32px}.leading-\[34px\]{line-height:34px}.leading-\[35px\]{line-height:35px}.leading-\[42px\]{line-height:42px}.leading-\[60px\]{line-height:60px}.leading-none{line-height:1}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.75}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.\!text-gray-600{--tw-text-opacity:1!important;color:rgb(87 112 138/var(--tw-text-opacity))!important}.\!text-primary-default{--tw-text-opacity:1!important;color:rgb(15 135 235/var(--tw-text-opacity))!important}.\!text-white{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.text-\[\#0479d9\]{--tw-text-opacity:1;color:rgb(4 121 217/var(--tw-text-opacity))}.text-\[\#0f87eb\]{--tw-text-opacity:1;color:rgb(15 135 235/var(--tw-text-opacity))}.text-\[\#113b86\]{--tw-text-opacity:1;color:rgb(17 59 134/var(--tw-text-opacity))}.text-\[\#1638877f\]{color:#1638877f}.text-\[\#1C90D2\],.text-\[\#1c90d2\]{--tw-text-opacity:1;color:rgb(28 144 210/var(--tw-text-opacity))}.text-\[\#2660a4\]{--tw-text-opacity:1;color:rgb(38 96 164/var(--tw-text-opacity))}.text-\[\#2dbee3\]{--tw-text-opacity:1;color:rgb(45 190 227/var(--tw-text-opacity))}.text-\[\#3976bf\]{--tw-text-opacity:1;color:rgb(57 118 191/var(--tw-text-opacity))}.text-\[\#3F83C4\]{--tw-text-opacity:1;color:rgb(63 131 196/var(--tw-text-opacity))}.text-\[\#3f6da4\]{--tw-text-opacity:1;color:rgb(63 109 164/var(--tw-text-opacity))}.text-\[\#599ad4\]{--tw-text-opacity:1;color:rgb(89 154 212/var(--tw-text-opacity))}.text-\[\#666\]{--tw-text-opacity:1;color:rgb(102 102 102/var(--tw-text-opacity))}.text-\[\#68ad97\]{--tw-text-opacity:1;color:rgb(104 173 151/var(--tw-text-opacity))}.text-\[\#8CDFFC\]{--tw-text-opacity:1;color:rgb(140 223 252/var(--tw-text-opacity))}.text-\[\#969696\]{--tw-text-opacity:1;color:rgb(150 150 150/var(--tw-text-opacity))}.text-\[\#989898\]{--tw-text-opacity:1;color:rgb(152 152 152/var(--tw-text-opacity))}.text-\[\#de5d5d\]{--tw-text-opacity:1;color:rgb(222 93 93/var(--tw-text-opacity))}.text-\[\#f00\]{--tw-text-opacity:1;color:rgb(255 0 0/var(--tw-text-opacity))}.text-\[black\]{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-\[cyan\]{--tw-text-opacity:1;color:rgb(0 255 255/var(--tw-text-opacity))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-blue-200{--tw-text-opacity:1;color:rgb(128 209 255/var(--tw-text-opacity))}.text-blue-300{--tw-text-opacity:1;color:rgb(73 176 245/var(--tw-text-opacity))}.text-blue-400{--tw-text-opacity:1;color:rgb(17 138 237/var(--tw-text-opacity))}.text-blue-50{--tw-text-opacity:1;color:rgb(240 248 255/var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity:1;color:rgb(0 91 166/var(--tw-text-opacity))}.text-blue-700{--tw-text-opacity:1;color:rgb(0 57 115/var(--tw-text-opacity))}.text-blue-800{--tw-text-opacity:1;color:rgb(0 38 77/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(160 175 189/var(--tw-text-opacity))}.text-gray-50{--tw-text-opacity:1;color:rgb(248 249 250/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(127 146 165/var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity:1;color:rgb(87 112 138/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(47 78 109/var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity:1;color:rgb(0 38 77/var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity))}.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity))}.text-inherit{color:inherit}.text-primary-dark{--tw-text-opacity:1;color:rgb(32 63 119/var(--tw-text-opacity))}.text-primary-default{--tw-text-opacity:1;color:rgb(15 135 235/var(--tw-text-opacity))}.text-primary-gray-dark{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity))}.text-primary-gray-medium{--tw-text-opacity:1;color:rgb(102 102 102/var(--tw-text-opacity))}.text-primary-green{--tw-text-opacity:1;color:rgb(73 186 186/var(--tw-text-opacity))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.\!no-underline{text-decoration-line:none!important}.no-underline{text-decoration-line:none}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-featured{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-featured{--tw-shadow:0px 2px 18px 0px rgba(0,0,0,.3);--tw-shadow-colored:0px 2px 18px 0px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.shadow-none,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.\!outline-0{outline-width:0!important}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-2,.ring-4{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-4{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-inset{--tw-ring-inset:inset}.ring-blue-100{--tw-ring-opacity:1;--tw-ring-color:rgb(191 228 255/var(--tw-ring-opacity))}.ring-gray-200{--tw-ring-opacity:1;--tw-ring-color:rgb(217 223 229/var(--tw-ring-opacity))}.ring-green-600\/20{--tw-ring-color:rgba(22,163,74,.2)}.blur{--tw-blur:blur(8px)}.blur,.drop-shadow-lg{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-lg{--tw-drop-shadow:drop-shadow(0 10px 8px rgba(0,0,0,.04)) drop-shadow(0 4px 3px rgba(0,0,0,.1))}.invert{--tw-invert:invert(100%)}.filter,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.delay-150{transition-delay:.15s}.duration-0{transition-duration:0s}.duration-1000{transition-duration:1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-75{transition-duration:75ms}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.ais-SearchBox form{align-items:center;display:flex;position:relative;width:100%}.ais-SearchBox-input{--tw-border-opacity:1;border-color:rgb(217 223 229/var(--tw-border-opacity));border-width:2px;font-size:1.125rem;padding:1rem 3.5rem;width:100%}.ais-SearchBox-input:focus{--tw-border-opacity:1;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);border-color:rgb(15 135 235/var(--tw-border-opacity));box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.ais-SearchBox-input::-moz-placeholder{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity));opacity:.7}.ais-SearchBox-input::placeholder{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity));opacity:.7}.ais-SearchBox-reset{position:absolute;right:5rem}.ais-SearchBox-reset svg{--tw-text-opacity:1!important;fill:currentColor;color:rgb(51 51 51/var(--tw-text-opacity))!important}.ais-SearchBox-submit{--tw-translate-y:-50%;left:1.25rem;position:absolute;top:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.ais-SearchBox-submit svg{--tw-text-opacity:1!important;fill:currentColor;color:rgb(51 51 51/var(--tw-text-opacity))!important;height:1.25rem;width:auto}.ais-Pagination,.ais-Pagination-list{display:flex;list-style-type:none!important;margin:0!important;padding:0!important}.ais-Pagination .ais-Pagination-item{margin-bottom:0!important}.ais-Pagination .ais-Pagination-item--previousPage,.ais-Pagination-item--nextPage{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity));display:flex;flex-direction:column;height:100%;justify-content:center;padding-left:.25rem!important;padding-right:.25rem!important}.ais-Pagination .ais-Pagination-item--previousPage.ais-Pagination-item--disabled span,.ais-Pagination-item--nextPage.ais-Pagination-item--disabled span{opacity:.5}.ais-Pagination .ais-Pagination-item--page a{padding-bottom:.25rem;padding-left:.5rem!important;padding-right:.5rem!important;padding-top:.25rem}.ais-Pagination .ais-Pagination-item--page{padding-left:.125rem!important;padding-right:.125rem!important}.ais-Pagination .ais-Pagination-item.ais-Pagination-item--selected a{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity));opacity:1}.ais-Pagination .ais-Pagination-item a{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity));opacity:.7}.ais-Highlight-highlighted,.algolia-docsearch-suggestion--highlight{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(15 135 235/var(--tw-bg-opacity));color:rgb(240 248 255/var(--tw-text-opacity))}.comma-list ul{list-style-type:none!important}@media (max-width:768px){.comma-list p{margin-bottom:0}.comma-list ul{display:flex;flex-wrap:wrap}.comma-list li,.comma-list ul{margin:0!important;padding:0!important}.comma-list li{display:inline-flex}.comma-list li:after{content:", ";padding-right:4px}.comma-list li:last-child:after{content:""}}.table-responsive{overflow:hidden;overflow-x:scroll}.styled-table p{margin:0!important;padding:0!important}.styled-table .first-row .first-col{vertical-align:bottom}.styled-table td:not(.first-row .first-col),.styled-table th:not(.first-col){--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.responsive-table{margin:0;padding:0;table-layout:fixed;width:100%}.responsive-table caption{margin:.75rem .5rem}@media screen and (max-width:640px){.responsive-table,.responsive-table thead{border-style:none}.responsive-table thead{clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.responsive-table tr{border-width:1px;display:block;font-family:Lexend,Helvetica,Arial,Lucida,sans-serif;margin-bottom:.5rem}.responsive-table td{align-items:center;border-width:1px;display:flex;font-size:.75rem;justify-content:space-between}.responsive-table td:before{font-weight:700;text-align:left;width:40%}.responsive-table td:not(.first-col):before{--tw-text-opacity:1;color:rgb(32 63 119/var(--tw-text-opacity));content:attr(data-label)}.responsive-table td.first-col:before{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity));content:attr(data-label)}.responsive-table td.light:before{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity));content:attr(data-label)}.responsive-table td:last-child{border-bottom-width:0}}.arrowlist ul li::marker{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity));content:"► ";font-size:80%}.triangle-right{list-style:none;margin:.75em 0;padding:0 1em}.triangle-right>li:before{border-style:solid;border-width:.35em 0 .35em .45em;content:"";display:block;height:0;left:-1em;position:relative;top:1.1em;width:0}.triangle-bottom{position:relative}.triangle-bottom:after{border-bottom:12px solid;border-left:12px solid transparent;border-right:12px solid transparent;bottom:0;content:"";height:0;left:50%;margin-left:-12px;position:absolute;width:0}.inverted-quotes img{max-height:20px}@media screen and (min-width:768px){.inverted-quotes blockquote:nth-child(2n) div{flex-direction:row-reverse;text-align:right}.inverted-quotes blockquote:nth-child(2n) img{margin-left:auto}.inverted-quotes blockquote:nth-child(2n) svg{margin-left:1.25rem;margin-right:0}}#main-footer-top ul{list-style-type:none;margin-left:0}.success-story table{border:0!important;border-collapse:collapse;width:100%}.success-story table td,.success-story table th{border:0;padding:8px;text-align:left}.success-story table tr:nth-child(3n+1) th{background:#f0faff;border-top:1px solid #f1f1f1!important;border:0;color:#1a3a7b;color:#3f6da4!important;font-family:Montserrat,Helvetica,Arial,Lucida,sans-serif;font-size:110%;padding-bottom:8px!important;padding-top:20px!important}.success-story table td{font-size:12px;padding-right:16px!important;padding-top:0!important;vertical-align:top}.success-story table td ul{line-height:1.5em;padding-bottom:25px!important;padding-left:15px!important;padding-top:0!important}.success-story table td ul li{margin:3px 0}.success-story table td ul li::marker{color:#999}.success-story table tr.subhdr th{background:#fff;border-top:0!important;color:inherit!important;font-size:90%;padding-bottom:8px!important;padding-top:12px!important}#mainfooter a:active,#mainfooter a:focus,#mainfooter a:hover{text-decoration:none!important}#careers h2,#careers h3,#careers h4,#careers h5,#careers h6{--tw-text-opacity:1;color:rgb(0 57 115/var(--tw-text-opacity))}#careers h2:nth-child(n+2){--tw-border-opacity:1;border-color:rgb(237 240 242/var(--tw-border-opacity));border-top-width:1px;margin-top:0;padding-top:1.25rem}.careerform input,.careerform label,.careerform select,.careerform textarea{max-width:100%;width:100%}.careerform form{width:100%}.careerform form input:not([type=file]),.careerform form textarea{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(237 240 242/var(--tw-border-opacity));border-width:1px;padding:.5rem}.careerform button,.careerform input.hs-button.primary.large{--tw-bg-opacity:1;background-color:rgb(17 138 237/var(--tw-bg-opacity));border-radius:.25rem;display:inline-block;font-size:1.125rem;font-weight:500;margin-bottom:1rem;margin-top:1rem;padding:1rem 1.5rem;transition-duration:.3s;width:auto}.careerform button:hover,.careerform input.hs-button.primary.large:hover{text-decoration-line:none}.careerform button:focus,.careerform input.hs-button.primary.large:focus{outline:2px solid transparent;outline-offset:2px}.careerform button,.careerform input.hs-button.primary.large{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.careerform button:hover,.careerform input.hs-button.primary.large:hover{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(0 91 166/var(--tw-bg-opacity));color:rgb(255 255 255/var(--tw-text-opacity))}.careerform button,.careerform input.hs-button.primary.large{border-width:0;cursor:pointer;display:block;font-weight:700;margin:1.25rem auto 0;padding:.5rem 2rem;width:100%}.careerform .hs-fieldtype-file{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity));border-color:rgb(237 240 242/var(--tw-border-opacity));border-radius:.25rem;border-width:1px;padding:.75rem}.careerform .hs-fieldtype-file legend{--tw-text-opacity:1;color:rgb(87 112 138/var(--tw-text-opacity));font-size:.75rem;padding-bottom:.5rem}.careerform .hs-fieldtype-file input[type=file]{--tw-text-opacity:1;color:rgb(0 91 166/var(--tw-text-opacity));font-size:.875rem}.careerform .hs-fieldtype-file input[type=file]::file-selector-button{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(240 248 255/var(--tw-bg-opacity));border-color:rgb(191 228 255/var(--tw-border-opacity));border-radius:.125rem;color:rgb(0 91 166/var(--tw-text-opacity))}.careerform .submitted-message{font-size:.875rem;margin-bottom:0;text-align:center}.api-form input[type=file]{--tw-text-opacity:1;color:rgb(0 91 166/var(--tw-text-opacity));font-size:.875rem}.api-form input[type=file]::file-selector-button{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(240 248 255/var(--tw-bg-opacity));border-color:rgb(191 228 255/var(--tw-border-opacity));border-radius:.125rem;color:rgb(0 91 166/var(--tw-text-opacity))}.success-stories__active.is-selected{--tw-border-opacity:1;background-color:rgba(248,249,250,.5);border-color:rgb(17 138 237/var(--tw-border-opacity));font-weight:500}.careers__now-hiring{position:relative}.careers__now-hiring:after{--tw-translate-y:-50%;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(4 121 217/var(--tw-bg-opacity));border-radius:9999px;color:rgb(255 255 255/var(--tw-text-opacity));content:"Now Hiring";font-size:.6rem;margin-left:.5rem;padding:1px .5rem;position:absolute;top:53%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media screen and (min-width:768px){.special-quote{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 134 100'%3E%3Cpath d='M.3 52.75c.44-2.34.81-4.7 1.34-7.02C7.33 20.74 23.71 6.66 47.85.52c.63-.16 1.26-.29 1.89-.43.08-.02.18.01.66.05 1.72 3.73 3.53 7.63 5.37 11.59-13.67 6.59-20.71 17.5-22.32 32.62h22.22V100H.3V52.75ZM133.7 100H78.63c-.22-.4-.39-.55-.38-.71.09-15.55-.69-31.16.51-46.62 1.95-25.06 16.13-41.36 39.45-49.99 1.56-.58 3.15-1.08 4.75-1.52 1.6-.44 3.23-.74 5.09-1.16 1.88 3.87 3.77 7.74 5.65 11.62v.56c-1.11.41-2.29.68-3.31 1.25-10.12 5.71-16.01 14.48-18.37 25.73-.35 1.65-.4 3.37-.61 5.26h22.3v55.59Z' style='fill:%230ff'/%3E%3C/svg%3E");background-position:65px 75px;background-repeat:no-repeat;background-size:140px}}@media screen and (max-width:767px){.special-quote{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 134 100'%3E%3Cpath d='M.3 52.75c.44-2.34.81-4.7 1.34-7.02C7.33 20.74 23.71 6.66 47.85.52c.63-.16 1.26-.29 1.89-.43.08-.02.18.01.66.05 1.72 3.73 3.53 7.63 5.37 11.59-13.67 6.59-20.71 17.5-22.32 32.62h22.22V100H.3V52.75ZM133.7 100H78.63c-.22-.4-.39-.55-.38-.71.09-15.55-.69-31.16.51-46.62 1.95-25.06 16.13-41.36 39.45-49.99 1.56-.58 3.15-1.08 4.75-1.52 1.6-.44 3.23-.74 5.09-1.16 1.88 3.87 3.77 7.74 5.65 11.62v.56c-1.11.41-2.29.68-3.31 1.25-10.12 5.71-16.01 14.48-18.37 25.73-.35 1.65-.4 3.37-.61 5.26h22.3v55.59Z' style='fill:%230ff'/%3E%3C/svg%3E");background-position:1.25rem 30px;background-repeat:no-repeat;background-size:30px}}@media screen and (min-width:670px) and (max-width:767px){.special-quote{background-position:1.75rem 30px!important}}@media screen and (min-width:1080px){.netscaler-landing-hero:after{background:linear-gradient(0deg,#97c3f2,#4467b6);clip-path:polygon(26% 0,100% 0,100% 100%,0 100%);content:"";height:100%;left:45%;position:absolute;top:0;width:100%}}@media screen and (min-width:768px) and (max-width:1080px){.netscaler-landing-hero:after{background:linear-gradient(0deg,#97c3f2,#4467b6);clip-path:polygon(26% 0,100% 0,100% 100%,0 100%);content:"";height:100%;left:60%;position:absolute;top:0;width:100%}}@media screen and (max-width:768px){.netscaler-landing-hero:after{background:linear-gradient(49deg,#97c3f2,#4467b6);bottom:0;clip-path:polygon(0 15%,100% 0,100% 100%,0 100%);content:"";height:30%;left:0;position:absolute;width:100%}}.play-button:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23128aed8f'%3E%3Cpath d='M6.3 2.84A1.5 1.5 0 0 0 4 4.11v11.78a1.5 1.5 0 0 0 2.3 1.27l9.344-5.891a1.5 1.5 0 0 0 0-2.538L6.3 2.841Z'/%3E%3C/svg%3E");content:"";height:50px;position:absolute;right:50%;top:50%;transform:translate(50%,-50%);width:50px}.tabs .tabs--active-arrow:before{--tw-translate-y:-50%;--tw-bg-opacity:1;background-color:rgb(17 138 237/var(--tw-bg-opacity));clip-path:polygon(100% 50%,0 0,0 100%);content:"";height:.75rem;left:0;position:absolute;top:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));width:.625rem}.homepage-main-carousel,.homepage-top-slideshow-carousel{-webkit-user-select:none;-moz-user-select:none;user-select:none}.homepage-main-carousel .flickity-page-dots,.homepage-top-slideshow-carousel .flickity-page-dots{bottom:20px!important;z-index:0}.homepage-main-carousel .flickity-page-dots .dot,.homepage-top-slideshow-carousel .flickity-page-dots .dot{--tw-bg-opacity:0.9;background-color:rgb(0 38 77/var(--tw-bg-opacity));border-radius:.5rem;height:4px;margin-left:8px;margin-right:8px;width:40px}.homepage-main-carousel .flickity-button,.homepage-top-slideshow-carousel .flickity-button{height:2.5rem;padding:1rem;transition-duration:75ms;width:2.5rem;z-index:20}.homepage-main-carousel .flickity-slider .carousel-cell,.homepage-top-slideshow-carousel .flickity-slider .carousel-cell{transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.success-stories-carousel .carousel-cell{height:530px!important}#productspage{padding-top:2.5rem!important}#productspage .sectionheadercontainer{max-width:56rem!important}#productspage .sectionintro{display:block;font-size:1.5rem;font-weight:400;padding-bottom:1.25rem}@media (max-width:768px){.hide-bg-on-mobile{background-image:none!important}}.custom-gradient-glossary{--tw-bg-opacity:1;background-color:rgb(240 248 255/var(--tw-bg-opacity))}@media (min-width:1080px){.custom-gradient-glossary{background:#f0f8ff;background:linear-gradient(90deg,#f0f8ff 46%,#98e6fd 62%,#aeebfd 79%,#443d83);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#f0f8ff",endColorstr="#443d83",GradientType=1)}}.darklink a{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity))}.darklink a:hover{--tw-text-opacity:1;color:rgb(47 78 109/var(--tw-text-opacity))}.prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity:1;color:rgb(17 138 237/var(--tw-text-opacity))}h1 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))),h2 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))),h3 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))),h4 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))),h5 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))),h6 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity:1;color:rgb(17 138 237/var(--tw-text-opacity))}h1 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))) a,h2 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))) a,h3 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))) a,h4 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))) a,h5 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))) a,h6 .prose-a\:text-highlight :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))) a{--tw-text-opacity:1;color:rgb(17 138 237/var(--tw-text-opacity))}@media (min-width:640px){.sm\:pl-default{padding-left:1.25rem}}@media (min-width:768px){.md\:pt-default{padding-top:2.25rem}@media (min-width:768px){.md\:pt-default{padding-top:5rem}}.md\:pb-default{padding-bottom:2.25rem}@media (min-width:768px){.md\:pb-default{padding-bottom:5rem}}.md\:px-default{padding-right:1.25rem}.md\:pl-default,.md\:px-default{padding-left:1.25rem}.md\:pr-default{padding-right:1.25rem}.md\:contactformnew .hs-recaptcha{margin-left:auto;margin-right:auto}.md\:contactformnew form{--tw-bg-opacity:1;--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:.5rem;border-width:2px;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);display:flex;flex-direction:row;flex-wrap:wrap;padding:1.5rem .75rem .75rem}.md\:contactformnew .hs-form-field{padding-left:.5rem;padding-right:.5rem;width:100%}@media (min-width:768px){.md\:contactformnew .hs-form-field{width:50%}}.md\:contactformnew .hs-dependent-field{padding-left:.5rem;padding-right:.5rem;width:100%}@media (min-width:768px){.md\:contactformnew .hs-dependent-field{width:50%}}.md\:contactformnew .hs-dependent-field .hs-form-field{padding-left:0;padding-right:0;width:100%}.md\:contactformnew .hs-fieldtype-textarea{margin-bottom:0!important;width:100%}.md\:contactformnew .hs-fieldtype-textarea textarea{margin-bottom:0}.md\:contactformnew .legal-consent-container .hs-richtext{margin:0!important}.md\:contactformnew .legal-consent-container .hs-richtext p{padding-left:.5rem;padding-right:.5rem}.md\:contactformnew .legal-consent-container .hs-dependent-field{width:100%}.md\:contactformnew [type=checkbox]{margin-top:4px}.md\:contactformnew .hs-submit{width:100%}.md\:contactformnew form .hs_contact_form_qualifying_question{width:100%!important}}@media (min-width:1080px){.lg\:px-default{padding-left:1.25rem;padding-right:1.25rem}}@media (min-width:1280px){.xl\:pl-default{padding-left:1.25rem}}@media (min-width:1080px){.lg\:container{margin-left:auto;margin-right:auto;width:100%}@media (min-width:640px){.lg\:container{max-width:640px}}@media (min-width:768px){.lg\:container{max-width:768px}}@media (min-width:1080px){.lg\:container{max-width:1080px}}}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:bottom-0:before{bottom:0;content:var(--tw-content)}.before\:left-0:before{content:var(--tw-content);left:0}.before\:left-1\/2:before{content:var(--tw-content);left:50%}.before\:left-\[5\%\]:before{content:var(--tw-content);left:5%}.before\:right-0:before{content:var(--tw-content);right:0}.before\:top-0:before{content:var(--tw-content);top:0}.before\:top-1\/2:before{content:var(--tw-content);top:50%}.before\:-z-10:before{content:var(--tw-content);z-index:-10}.before\:hidden:before{content:var(--tw-content);display:none}.before\:h-0:before{content:var(--tw-content);height:0}.before\:h-1\/2:before{content:var(--tw-content);height:50%}.before\:h-full:before{content:var(--tw-content);height:100%}.before\:w-0:before{content:var(--tw-content);width:0}.before\:w-\[90\%\]:before{content:var(--tw-content);width:90%}.before\:-translate-x-1\/2:before{--tw-translate-x:-50%}.before\:-translate-x-1\/2:before,.before\:-translate-y-1\/2:before{content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.before\:-translate-y-1\/2:before{--tw-translate-y:-50%}.before\:border-l-\[50px\]:before{border-left-width:50px;content:var(--tw-content)}.before\:border-r-\[50px\]:before{border-right-width:50px;content:var(--tw-content)}.before\:border-t-\[23px\]:before{border-top-width:23px;content:var(--tw-content)}.before\:\!border-x-\[black\]:before{--tw-border-opacity:1!important;border-left-color:rgb(0 0 0/var(--tw-border-opacity))!important;border-right-color:rgb(0 0 0/var(--tw-border-opacity))!important;content:var(--tw-content)}.before\:border-x-\[\#3f6da4\]:before{--tw-border-opacity:1;border-left-color:rgb(63 109 164/var(--tw-border-opacity));border-right-color:rgb(63 109 164/var(--tw-border-opacity));content:var(--tw-content)}.before\:border-y-transparent:before{border-bottom-color:transparent;border-top-color:transparent;content:var(--tw-content)}.before\:border-l-white:before{--tw-border-opacity:1;border-left-color:rgb(255 255 255/var(--tw-border-opacity));content:var(--tw-content)}.before\:border-r-white:before{--tw-border-opacity:1;border-right-color:rgb(255 255 255/var(--tw-border-opacity));content:var(--tw-content)}.before\:border-t-transparent:before{border-top-color:transparent;content:var(--tw-content)}.before\:bg-black:before{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity));content:var(--tw-content)}.before\:bg-\[url\(\/assets\/homepage\/header\/header-grid\.svg\)\]:before{background-image:url(https://cdn.haproxy.com/assets/homepage/header/header-grid.svg);content:var(--tw-content)}.before\:bg-gradient-to-b:before{background-image:linear-gradient(to bottom,var(--tw-gradient-stops));content:var(--tw-content)}.before\:from-\[\#f3f8fc\]:before{--tw-gradient-from:#f3f8fc var(--tw-gradient-from-position);--tw-gradient-to:rgba(243,248,252,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);content:var(--tw-content)}.before\:from-\[\#f5f9fc\]:before{--tw-gradient-from:#f5f9fc var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,249,252,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);content:var(--tw-content)}.before\:via-white:before{--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fff var(--tw-gradient-via-position),var(--tw-gradient-to);content:var(--tw-content)}.before\:via-\[40\%\]:before{--tw-gradient-via-position:40%;content:var(--tw-content)}.before\:to-\[\#f4f8fd\]:before{--tw-gradient-to:#f4f8fd var(--tw-gradient-to-position);content:var(--tw-content)}.before\:to-white:before{--tw-gradient-to:#fff var(--tw-gradient-to-position);content:var(--tw-content)}.before\:bg-cover:before{background-size:cover;content:var(--tw-content)}.before\:opacity-30:before{content:var(--tw-content);opacity:.3}.before\:shadow-\[inset_0px_-23px_94px_-53px_rgba\(15\2c 18\2c 80\2c 0\.7\)\]:before{--tw-shadow:inset 0px -23px 94px -53px rgba(15,18,80,.7);--tw-shadow-colored:inset 0px -23px 94px -53px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);content:var(--tw-content)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:bottom-0:after{bottom:0;content:var(--tw-content)}.after\:left-0:after{content:var(--tw-content);left:0}.after\:right-0:after{content:var(--tw-content);right:0}.after\:top-0:after{content:var(--tw-content);top:0}.after\:h-0:after{content:var(--tw-content);height:0}.after\:w-0:after{content:var(--tw-content);width:0}.after\:border-l-\[50px\]:after{border-left-width:50px;content:var(--tw-content)}.after\:border-r-\[50px\]:after{border-right-width:50px;content:var(--tw-content)}.after\:border-t-\[23px\]:after{border-top-width:23px;content:var(--tw-content)}.after\:border-b-\[\#00b2ff\]:after{--tw-border-opacity:1;border-bottom-color:rgb(0 178 255/var(--tw-border-opacity));content:var(--tw-content)}.after\:border-l-transparent:after{border-left-color:transparent;content:var(--tw-content)}.after\:border-r-transparent:after{border-right-color:transparent;content:var(--tw-content)}.after\:border-t-white:after{--tw-border-opacity:1;border-top-color:rgb(255 255 255/var(--tw-border-opacity));content:var(--tw-content)}.hover\:border-blue-500:hover{--tw-border-opacity:1;border-color:rgb(4 121 217/var(--tw-border-opacity))}.hover\:border-blue-600:hover{--tw-border-opacity:1;border-color:rgb(0 91 166/var(--tw-border-opacity))}.hover\:border-primary-dark:hover{--tw-border-opacity:1;border-color:rgb(32 63 119/var(--tw-border-opacity))}.hover\:border-b-blue-500:hover{--tw-border-opacity:1;border-bottom-color:rgb(4 121 217/var(--tw-border-opacity))}.hover\:border-b-primary-default:hover{--tw-border-opacity:1;border-bottom-color:rgb(15 135 235/var(--tw-border-opacity))}.hover\:border-t-blue-500:hover{--tw-border-opacity:1;border-top-color:rgb(4 121 217/var(--tw-border-opacity))}.hover\:border-t-primary-default:hover{--tw-border-opacity:1;border-top-color:rgb(15 135 235/var(--tw-border-opacity))}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(0 91 166/var(--tw-bg-opacity))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(237 240 242/var(--tw-bg-opacity))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(217 223 229/var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(248 249 250/var(--tw-bg-opacity))}.hover\:bg-gray-800:hover{--tw-bg-opacity:1;background-color:rgb(0 38 77/var(--tw-bg-opacity))}.hover\:bg-green-100:hover{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity))}.hover\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity))}.hover\:font-bold:hover{font-weight:700}.hover\:\!text-blue-700:hover{--tw-text-opacity:1!important;color:rgb(0 57 115/var(--tw-text-opacity))!important}.hover\:text-\[\#3976bf\]:hover{--tw-text-opacity:1;color:rgb(57 118 191/var(--tw-text-opacity))}.hover\:text-\[black\]:hover,.hover\:text-black:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.hover\:text-blue-100:hover{--tw-text-opacity:1;color:rgb(191 228 255/var(--tw-text-opacity))}.hover\:text-blue-200:hover{--tw-text-opacity:1;color:rgb(128 209 255/var(--tw-text-opacity))}.hover\:text-blue-500:hover{--tw-text-opacity:1;color:rgb(4 121 217/var(--tw-text-opacity))}.hover\:text-blue-600:hover{--tw-text-opacity:1;color:rgb(0 91 166/var(--tw-text-opacity))}.hover\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(87 112 138/var(--tw-text-opacity))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(47 78 109/var(--tw-text-opacity))}.hover\:text-green-600:hover{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.hover\:text-inherit:hover{color:inherit}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.hover\:underline:hover{text-decoration-line:underline}.hover\:no-underline:hover{text-decoration-line:none}.hover\:decoration-0:hover{text-decoration-thickness:0}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:drop-shadow-lg:hover{--tw-drop-shadow:drop-shadow(0 10px 8px rgba(0,0,0,.04)) drop-shadow(0 4px 3px rgba(0,0,0,.1));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:before\:\!border-x-\[black\]:hover:before{--tw-border-opacity:1!important;border-left-color:rgb(0 0 0/var(--tw-border-opacity))!important;border-right-color:rgb(0 0 0/var(--tw-border-opacity))!important;content:var(--tw-content)}.focus\:z-20:focus{z-index:20}.focus\:border-blue-500:focus{--tw-border-opacity:1;border-color:rgb(4 121 217/var(--tw-border-opacity))}.focus\:border-gray-400:focus{--tw-border-opacity:1;border-color:rgb(160 175 189/var(--tw-border-opacity))}.focus\:border-primary-default:focus{--tw-border-opacity:1;border-color:rgb(15 135 235/var(--tw-border-opacity))}.focus\:shadow-lg:focus{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-2:focus,.focus\:ring-4:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-4:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(4 121 217/var(--tw-ring-opacity))}.focus\:ring-green-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(22 163 74/var(--tw-ring-opacity))}.focus\:ring-primary-default:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(15 135 235/var(--tw-ring-opacity))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.focus\:ring-offset-green-50:focus{--tw-ring-offset-color:#f0fdf4}.focus-visible\:ring:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.group:hover .group-hover\:block{display:block}.group:hover .group-hover\:hidden{display:none}.group:hover .group-hover\:rotate-180{--tw-rotate:180deg}.group:hover .group-hover\:rotate-180,.group:hover .group-hover\:scale-110{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-110{--tw-scale-x:1.1;--tw-scale-y:1.1}@keyframes spin{to{transform:rotate(1turn)}}.group:hover .group-hover\:animate-\[spin_1\.5s_ease-in-out\]{animation:spin 1.5s ease-in-out}@keyframes pulse{50%{opacity:.5}}.group:hover .group-hover\:animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.group:hover .group-hover\:\!border-white{--tw-border-opacity:1!important;border-color:rgb(255 255 255/var(--tw-border-opacity))!important}.group:hover .group-hover\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.group:hover .group-hover\:opacity-100{opacity:1}@media (prefers-reduced-motion:no-preference){.motion-safe\:transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}}@media (min-width:640px){.sm\:bottom-\[86px\]{bottom:86px}.sm\:top-\[50\%\]{top:50%}.sm\:mx-0{margin-left:0;margin-right:0}.sm\:mx-auto{margin-left:auto;margin-right:auto}.sm\:my-0{margin-bottom:0;margin-top:0}.sm\:my-16{margin-bottom:4rem;margin-top:4rem}.sm\:mb-0{margin-bottom:0}.sm\:ml-5{margin-left:1.25rem}.sm\:ml-6{margin-left:1.5rem}.sm\:ml-auto{margin-left:auto}.sm\:mr-3{margin-right:.75rem}.sm\:mt-0{margin-top:0}.sm\:mt-\[-180px\]{margin-top:-180px}.sm\:mt-\[-200px\]{margin-top:-200px}.sm\:mt-\[-50px\]{margin-top:-50px}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:inline-flex{display:inline-flex}.sm\:hidden{display:none}.sm\:h-\[40px\]{height:40px}.sm\:h-full{height:100%}.sm\:min-h-\[800px\]{min-height:800px}.sm\:w-1\/2{width:50%}.sm\:w-1\/3{width:33.333333%}.sm\:w-1\/4{width:25%}.sm\:w-1\/5{width:20%}.sm\:w-2\/3{width:66.666667%}.sm\:w-2\/5{width:40%}.sm\:w-3\/4{width:75%}.sm\:w-3\/5{width:60%}.sm\:w-4\/5{width:80%}.sm\:w-5\/12{width:41.666667%}.sm\:w-7\/12{width:58.333333%}.sm\:w-9\/12{width:75%}.sm\:w-\[150px\]{width:150px}.sm\:w-\[40px\]{width:40px}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:min-w-\[128px\]{min-width:128px}.sm\:max-w-xl{max-width:36rem}.sm\:flex-1{flex:1 1 0%}.sm\:flex-shrink-0{flex-shrink:0}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:border-l{border-left-width:1px}.sm\:border-l-4{border-left-width:4px}.sm\:border-t-0{border-top-width:0}.sm\:bg-user-spolight-pattern{background-image:url(https://cdn.haproxy.com/assets/user-spotlight/haproxy-user-spotlight-series-slider-carousel.png),linear-gradient(86deg,#313792,#1d235d 75%)}.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-10{padding-left:2.5rem;padding-right:2.5rem}.sm\:px-24{padding-left:6rem;padding-right:6rem}.sm\:px-7{padding-left:1.75rem;padding-right:1.75rem}.sm\:pb-3{padding-bottom:.75rem}.sm\:pl-0{padding-left:0}.sm\:pl-12{padding-left:3rem}.sm\:pl-6{padding-left:1.5rem}.sm\:pt-0{padding-top:0}.sm\:text-left{text-align:left}.sm\:text-center{text-align:center}.sm\:text-right{text-align:right}.sm\:text-2xl{font-size:1.5rem}.sm\:text-3xl{font-size:1.875rem}.sm\:text-4xl{font-size:2.25rem}.sm\:text-lg{font-size:1.125rem}.sm\:text-xl{font-size:1.25rem}}@media (min-width:768px){.md\:fixed{position:fixed}.md\:absolute{position:absolute}.md\:relative{position:relative}.md\:inset-0{inset:0}.md\:bottom-\[126px\]{bottom:126px}.md\:bottom-\[20px\]{bottom:20px}.md\:left-0{left:0}.md\:left-auto{left:auto}.md\:right-\[20px\]{right:20px}.md\:right-\[62px\]{right:62px}.md\:top-0{top:0}.md\:top-\[101px\]{top:101px}.md\:top-\[102px\]{top:102px}.md\:top-\[30px\]{top:30px}.md\:top-\[35px\]{top:35px}.md\:top-\[85px\]{top:85px}.md\:col-span-3{grid-column:span 3/span 3}.md\:m-0{margin:0}.md\:m-auto{margin:auto}.md\:-my-\[34px\]{margin-bottom:-34px;margin-top:-34px}.md\:mx-0{margin-left:0;margin-right:0}.md\:mx-2{margin-left:.5rem;margin-right:.5rem}.md\:mx-5{margin-left:1.25rem;margin-right:1.25rem}.md\:mx-auto{margin-left:auto;margin-right:auto}.md\:my-0{margin-bottom:0;margin-top:0}.md\:my-12{margin-bottom:3rem;margin-top:3rem}.md\:my-auto{margin-bottom:auto;margin-top:auto}.md\:my-default{margin-bottom:2rem;margin-top:2rem}.md\:-mb-40{margin-bottom:-10rem}.md\:-mb-60{margin-bottom:-15rem}.md\:-mb-\[16em\]{margin-bottom:-16em}.md\:-mt-\[150px\]{margin-top:-150px}.md\:-mt-\[170px\]{margin-top:-170px}.md\:-mt-\[240px\]{margin-top:-240px}.md\:-mt-\[260px\]{margin-top:-260px}.md\:-mt-\[285px\]{margin-top:-285px}.md\:-mt-\[330px\]{margin-top:-330px}.md\:mb-0{margin-bottom:0}.md\:mb-10{margin-bottom:2.5rem}.md\:mb-12{margin-bottom:3rem}.md\:mb-16{margin-bottom:4rem}.md\:mb-4{margin-bottom:1rem}.md\:mb-5{margin-bottom:1.25rem}.md\:mb-6{margin-bottom:1.5rem}.md\:mb-\[-60px\]{margin-bottom:-60px}.md\:mb-auto{margin-bottom:auto}.md\:ml-3{margin-left:.75rem}.md\:ml-5{margin-left:1.25rem}.md\:ml-auto{margin-left:auto}.md\:mr-0{margin-right:0}.md\:mr-4{margin-right:1rem}.md\:mr-\[3\%\]{margin-right:3%}.md\:mt-0{margin-top:0}.md\:mt-20{margin-top:5rem}.md\:mt-4{margin-top:1rem}.md\:mt-6{margin-top:1.5rem}.md\:mt-\[-140px\]{margin-top:-140px}.md\:mt-\[120px\]{margin-top:120px}.md\:block{display:block}.md\:inline{display:inline}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:h-20{height:5rem}.md\:h-24{height:6rem}.md\:h-32{height:8rem}.md\:h-4{height:1rem}.md\:h-5{height:1.25rem}.md\:h-\[128px\]{height:128px}.md\:h-\[380px\]{height:380px}.md\:h-\[570px\]{height:570px}.md\:h-\[600px\]{height:600px}.md\:h-auto{height:auto}.md\:h-full{height:100%}.md\:max-h-\[480px\]{max-height:480px}.md\:max-h-\[calc\(100vh-150px\)\]{max-height:calc(100vh - 150px)}.md\:max-h-\[calc\(100vh-170px\)\]{max-height:calc(100vh - 170px)}.md\:max-h-\[calc\(100vh-290px\)\]{max-height:calc(100vh - 290px)}.md\:\!w-auto{width:auto!important}.md\:w-1\/2{width:50%}.md\:w-1\/3{width:33.333333%}.md\:w-1\/4{width:25%}.md\:w-1\/5{width:20%}.md\:w-10\/12{width:83.333333%}.md\:w-2\/3{width:66.666667%}.md\:w-2\/5{width:40%}.md\:w-2\/6{width:33.333333%}.md\:w-20{width:5rem}.md\:w-24{width:6rem}.md\:w-3\/4{width:75%}.md\:w-3\/5{width:60%}.md\:w-4{width:1rem}.md\:w-4\/5{width:80%}.md\:w-4\/6{width:66.666667%}.md\:w-5{width:1.25rem}.md\:w-5\/12{width:41.666667%}.md\:w-7\/12{width:58.333333%}.md\:w-\[128px\]{width:128px}.md\:w-\[22\.72\%\]{width:22.72%}.md\:w-\[22\.75\%\]{width:22.75%}.md\:w-\[30\%\]{width:30%}.md\:w-\[31\.3333\%\]{width:31.3333%}.md\:w-\[40\%\]{width:40%}.md\:w-\[45\%\]{width:45%}.md\:w-\[48\.5\%\]{width:48.5%}.md\:w-\[500px\]{width:500px}.md\:w-\[60\%\]{width:60%}.md\:w-\[65\.667\%\]{width:65.667%}.md\:w-\[70\%\]{width:70%}.md\:w-\[720px\]{width:720px}.md\:w-auto{width:auto}.md\:w-full{width:100%}.md\:max-w-\[100\%\]{max-width:100%}.md\:max-w-\[180px\]{max-width:180px}.md\:max-w-\[30\%\]{max-width:30%}.md\:max-w-\[440px\]{max-width:440px}.md\:max-w-\[60\%\]{max-width:60%}.md\:max-w-\[70\%\]{max-width:70%}.md\:max-w-\[75\%\]{max-width:75%}.md\:max-w-\[780px\]{max-width:780px}.md\:max-w-\[90\%\]{max-width:90%}.md\:max-w-\[90px\]{max-width:90px}.md\:flex-1{flex:1 1 0%}.md\:flex-shrink-0{flex-shrink:0}.md\:grow-0{flex-grow:0}.md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:flex-row-reverse{flex-direction:row-reverse}.md\:flex-col{flex-direction:column}.md\:flex-wrap{flex-wrap:wrap}.md\:flex-nowrap{flex-wrap:nowrap}.md\:items-start{align-items:flex-start}.md\:items-stretch{align-items:stretch}.md\:justify-between{justify-content:space-between}.md\:gap-2{gap:.5rem}.md\:gap-4{gap:1rem}.md\:gap-x-12{-moz-column-gap:3rem;column-gap:3rem}.md\:gap-y-10{row-gap:2.5rem}.md\:divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-left-width:calc(1px*(1 - var(--tw-divide-x-reverse)));border-right-width:calc(1px*var(--tw-divide-x-reverse))}.md\:divide-x-2>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-left-width:calc(2px*(1 - var(--tw-divide-x-reverse)));border-right-width:calc(2px*var(--tw-divide-x-reverse))}.md\:divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}.md\:divide-y-0>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:calc(0px*var(--tw-divide-y-reverse));border-top-width:calc(0px*(1 - var(--tw-divide-y-reverse)))}.md\:overflow-auto{overflow:auto}.md\:rounded-lg{border-radius:.5rem}.md\:border-0{border-width:0}.md\:border-b-\[4px\]{border-bottom-width:4px}.md\:border-l-2{border-left-width:2px}.md\:border-l-4{border-left-width:4px}.md\:border-l-\[2px\]{border-left-width:2px}.md\:border-l-\[5px\]{border-left-width:5px}.md\:border-r-2{border-right-width:2px}.md\:border-\[\#e2e2e2\]{--tw-border-opacity:1;border-color:rgb(226 226 226/var(--tw-border-opacity))}.md\:border-gray-100{--tw-border-opacity:1;border-color:rgb(237 240 242/var(--tw-border-opacity))}.md\:border-primary-gray-light{--tw-border-opacity:1;border-color:rgb(246 249 252/var(--tw-border-opacity))}.md\:border-transparent{border-color:transparent}.md\:bg-\[url\(\/assets\/about-us\/about-us-02\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-02.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-03\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-03.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-05\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-05.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-06\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-06.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-07\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-07.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-08\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-08.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-09\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-09.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-10\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-10.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-11\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-11.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-12\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-12.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-13\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-13.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-14\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-14.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-15\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-15.jpg)}.md\:bg-\[url\(\/assets\/about-us\/about-us-16\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-16.jpg)}.md\:bg-\[url\(\/assets\/about-us\/group-photo-scaled\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/group-photo-scaled.jpg)}.md\:bg-\[url\(\/assets\/about-us\/haproxy-200-scaled\.jpg\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/haproxy-200-scaled.jpg)}.md\:bg-\[url\(\/assets\/haproxy-enteprise-carousel-slide4\.png\)\]{background-image:url(https://cdn.haproxy.com/assets/haproxy-enteprise-carousel-slide4.png)}.md\:bg-custom-slide{background-image:url(https://cdn.haproxy.com/assets/testnew.png),linear-gradient(180deg,#fff,#e9f3fd)}.md\:bg-user-spolight-pattern{background-image:url(https://cdn.haproxy.com/assets/user-spotlight/haproxy-user-spotlight-series-slider-carousel.png),linear-gradient(86deg,#313792,#1d235d 75%)}.md\:bg-\[length\:50\%\]{background-size:50%}.md\:bg-center{background-position:50%}.md\:p-0{padding:0}.md\:p-10{padding:2.5rem}.md\:p-8{padding:2rem}.md\:px-0{padding-left:0;padding-right:0}.md\:px-10{padding-left:2.5rem;padding-right:2.5rem}.md\:px-16{padding-left:4rem;padding-right:4rem}.md\:px-20{padding-left:5rem;padding-right:5rem}.md\:px-32{padding-left:8rem;padding-right:8rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:px-7{padding-left:1.75rem;padding-right:1.75rem}.md\:px-9{padding-left:2.25rem;padding-right:2.25rem}.md\:px-\[10\%\]{padding-left:10%;padding-right:10%}.md\:px-\[100px\]{padding-left:100px;padding-right:100px}.md\:px-\[120px\]{padding-left:120px;padding-right:120px}.md\:py-0{padding-bottom:0;padding-top:0}.md\:py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.md\:py-10{padding-bottom:2.5rem;padding-top:2.5rem}.md\:py-11{padding-bottom:2.75rem;padding-top:2.75rem}.md\:py-12{padding-bottom:3rem;padding-top:3rem}.md\:py-20{padding-bottom:5rem;padding-top:5rem}.md\:py-4{padding-bottom:1rem;padding-top:1rem}.md\:py-6{padding-bottom:1.5rem;padding-top:1.5rem}.md\:py-8{padding-bottom:2rem;padding-top:2rem}.md\:pb-0{padding-bottom:0}.md\:pb-12{padding-bottom:3rem}.md\:pb-16{padding-bottom:4rem}.md\:pb-3{padding-bottom:.75rem}.md\:pb-5{padding-bottom:1.25rem}.md\:pl-0{padding-left:0}.md\:pl-10{padding-left:2.5rem}.md\:pl-2{padding-left:.5rem}.md\:pl-20{padding-left:5rem}.md\:pl-3{padding-left:.75rem}.md\:pl-4{padding-left:1rem}.md\:pl-6{padding-left:1.5rem}.md\:pl-\[240px\]{padding-left:240px}.md\:pl-\[60px\]{padding-left:60px}.md\:pr-0{padding-right:0}.md\:pr-10{padding-right:2.5rem}.md\:pr-12{padding-right:3rem}.md\:pr-20{padding-right:5rem}.md\:pr-4{padding-right:1rem}.md\:pr-5{padding-right:1.25rem}.md\:pr-9{padding-right:2.25rem}.md\:pr-\[60px\]{padding-right:60px}.md\:pt-0{padding-top:0}.md\:pt-10{padding-top:2.5rem}.md\:pt-12{padding-top:3rem}.md\:pt-3{padding-top:.75rem}.md\:pt-\[100px\]{padding-top:100px}.md\:pt-\[16em\]{padding-top:16em}.md\:pt-\[200px\]{padding-top:200px}.md\:pt-\[225px\]{padding-top:225px}.md\:pt-\[22em\]{padding-top:22em}.md\:pt-\[250px\]{padding-top:250px}.md\:pt-\[270px\]{padding-top:270px}.md\:pt-\[4\.5rem\]{padding-top:4.5rem}.md\:pt-\[40px\]{padding-top:40px}.md\:\!text-left{text-align:left!important}.md\:text-left{text-align:left}.md\:text-center{text-align:center}.md\:text-right{text-align:right}.md\:text-end{text-align:end}.md\:text-2xl{font-size:1.5rem}.md\:text-3xl{font-size:1.875rem}.md\:text-4xl{font-size:2.25rem}.md\:text-5xl{font-size:3rem}.md\:text-\[2\.25rem\]{font-size:2.25rem}.md\:text-\[24px\]{font-size:24px}.md\:text-\[54px\]{font-size:54px}.md\:text-base{font-size:1rem}.md\:text-lg{font-size:1.125rem}.md\:text-xl{font-size:1.25rem}.md\:leading-\[34px\]{line-height:34px}.md\:leading-\[59px\]{line-height:59px}.md\:leading-none{line-height:1}.md\:drop-shadow-xl{--tw-drop-shadow:drop-shadow(0 20px 13px rgba(0,0,0,.03)) drop-shadow(0 8px 5px rgba(0,0,0,.08));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.md\:\[background-position-x\:10\%\]{background-position-x:10%}.md\:\[background-position-x\:20\%\]{background-position-x:20%}.md\:before\:absolute:before{content:var(--tw-content);position:absolute}.md\:before\:bottom-0:before{bottom:0;content:var(--tw-content)}.md\:before\:left-\[50\%\]:before{content:var(--tw-content);left:50%}.md\:before\:top-0:before{content:var(--tw-content);top:0}.md\:before\:z-\[-100\]:before{content:var(--tw-content);z-index:-100}.md\:before\:ml-\[-50px\]:before{content:var(--tw-content);margin-left:-50px}.md\:before\:block:before{content:var(--tw-content);display:block}.md\:before\:h-\[100\%\]:before{content:var(--tw-content);height:100%}.md\:before\:w-\[100px\]:before{content:var(--tw-content);width:100px}.md\:before\:bg-\[\#00B2FF\]:before{--tw-bg-opacity:1;background-color:rgb(0 178 255/var(--tw-bg-opacity));content:var(--tw-content)}}@media (min-width:1080px){.lg\:absolute{position:absolute}.lg\:relative{position:relative}.lg\:sticky{position:sticky}.lg\:bottom-\[18px\]{bottom:18px}.lg\:top-\[110px\]{top:110px}.lg\:top-\[115px\]{top:115px}.lg\:top-\[120px\]{top:120px}.lg\:top-\[51\%\]{top:51%}.lg\:top-\[60px\]{top:60px}.lg\:top-\[68px\]{top:68px}.lg\:z-20{z-index:20}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:float-left{float:left}.lg\:mx-0{margin-left:0;margin-right:0}.lg\:mx-5{margin-left:1.25rem;margin-right:1.25rem}.lg\:mx-auto{margin-left:auto;margin-right:auto}.lg\:my-0{margin-bottom:0;margin-top:0}.lg\:my-\[30px\]{margin-bottom:30px;margin-top:30px}.lg\:-mt-10{margin-top:-2.5rem}.lg\:-mt-20{margin-top:-5rem}.lg\:-mt-24{margin-top:-6rem}.lg\:-mt-5{margin-top:-1.25rem}.lg\:-mt-\[170px\]{margin-top:-170px}.lg\:-mt-\[258px\]{margin-top:-258px}.lg\:-mt-\[265px\]{margin-top:-265px}.lg\:-mt-\[300px\]{margin-top:-300px}.lg\:-mt-\[380px\]{margin-top:-380px}.lg\:-mt-\[calc\(100vh-82px\)\]{margin-top:calc(-100vh - -82px)}.lg\:mb-0{margin-bottom:0}.lg\:mb-10{margin-bottom:2.5rem}.lg\:mb-12{margin-bottom:3rem}.lg\:mb-8{margin-bottom:2rem}.lg\:ml-0{margin-left:0}.lg\:ml-\[100px\]{margin-left:100px}.lg\:ml-auto{margin-left:auto}.lg\:mr-16{margin-right:4rem}.lg\:mr-\[380px\]{margin-right:380px}.lg\:mr-\[calc\(50vw\+300px\)\]{margin-right:calc(50vw + 300px)}.lg\:mt-0{margin-top:0}.lg\:mt-10{margin-top:2.5rem}.lg\:mt-\[calc\(2\.5rem\+50px\)\]{margin-top:calc(2.5rem + 50px)}.lg\:\!block{display:block!important}.lg\:block{display:block}.lg\:inline{display:inline}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:h-\[calc\(100vh-110px\)\]{height:calc(100vh - 110px)}.lg\:max-h-\[calc\(100vh-110px\)\]{max-height:calc(100vh - 110px)}.lg\:min-h-\[366px\]{min-height:366px}.lg\:w-1\/2{width:50%}.lg\:w-1\/3{width:33.333333%}.lg\:w-1\/4{width:25%}.lg\:w-2\/3{width:66.666667%}.lg\:w-2\/5{width:40%}.lg\:w-2\/6{width:33.333333%}.lg\:w-3\/12{width:25%}.lg\:w-3\/4{width:75%}.lg\:w-3\/5{width:60%}.lg\:w-4\/6{width:66.666667%}.lg\:w-5\/12{width:41.666667%}.lg\:w-7\/12{width:58.333333%}.lg\:w-8\/12{width:66.666667%}.lg\:w-9\/12{width:75%}.lg\:w-\[240px\]{width:240px}.lg\:w-\[380px\]{width:380px}.lg\:w-\[45\%\]{width:45%}.lg\:w-\[46\%\]{width:46%}.lg\:w-\[54\%\]{width:54%}.lg\:w-\[55\%\]{width:55%}.lg\:w-\[800px\]{width:800px}.lg\:w-\[calc\(50\%-40px\)\]{width:calc(50% - 40px)}.lg\:w-auto{width:auto}.lg\:w-full{width:100%}.lg\:max-w-3xl{max-width:48rem}.lg\:max-w-\[100\%\]{max-width:100%}.lg\:max-w-\[1180px\]{max-width:1180px}.lg\:max-w-\[1200px\]{max-width:1200px}.lg\:max-w-\[120px\]{max-width:120px}.lg\:max-w-\[1280px\]{max-width:1280px}.lg\:max-w-\[800px\]{max-width:800px}.lg\:max-w-\[81\%\]{max-width:81%}.lg\:max-w-\[910px\]{max-width:910px}.lg\:max-w-full{max-width:100%}.lg\:max-w-md{max-width:28rem}.lg\:flex-none{flex:none}.lg\:grow{flex-grow:1}.lg\:-translate-y-\[26\%\]{--tw-translate-y:-26%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:flex-row-reverse{flex-direction:row-reverse}.lg\:flex-col{flex-direction:column}.lg\:items-center{align-items:center}.lg\:justify-start{justify-content:flex-start}.lg\:justify-center{justify-content:center}.lg\:\!gap-6{gap:1.5rem!important}.lg\:self-end{align-self:flex-end}.lg\:overflow-y-auto{overflow-y:auto}.lg\:border{border-width:1px}.lg\:border-b{border-bottom-width:1px}.lg\:border-l-0{border-left-width:0}.lg\:border-t{border-top-width:1px}.lg\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.lg\:bg-\[url\(\/assets\/about-us\/about-us-header-08\.png\)\]{background-image:url(https://cdn.haproxy.com/assets/about-us/about-us-header-08.png)}.lg\:bg-cover{background-size:cover}.lg\:px-0{padding-left:0;padding-right:0}.lg\:px-1{padding-left:.25rem;padding-right:.25rem}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}.lg\:px-12{padding-left:3rem;padding-right:3rem}.lg\:px-4{padding-left:1rem;padding-right:1rem}.lg\:px-48{padding-left:12rem;padding-right:12rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:px-\[60px\]{padding-left:60px;padding-right:60px}.lg\:py-0{padding-bottom:0;padding-top:0}.lg\:py-2{padding-bottom:.5rem;padding-top:.5rem}.lg\:py-\[75px\]{padding-bottom:75px;padding-top:75px}.lg\:pb-0{padding-bottom:0}.lg\:pb-12{padding-bottom:3rem}.lg\:pb-24{padding-bottom:6rem}.lg\:pb-4{padding-bottom:1rem}.lg\:pl-0{padding-left:0}.lg\:pl-20{padding-left:5rem}.lg\:pl-3{padding-left:.75rem}.lg\:pl-4{padding-left:1rem}.lg\:pl-5{padding-left:1.25rem}.lg\:pl-7{padding-left:1.75rem}.lg\:pl-8{padding-left:2rem}.lg\:pr-0{padding-right:0}.lg\:pr-12{padding-right:3rem}.lg\:pr-20{padding-right:5rem}.lg\:pt-0{padding-top:0}.lg\:pt-12{padding-top:3rem}.lg\:pt-20{padding-top:5rem}.lg\:pt-6{padding-top:1.5rem}.lg\:pt-\[200px\]{padding-top:200px}.lg\:pt-\[258px\]{padding-top:258px}.lg\:pt-\[265px\]{padding-top:265px}.lg\:pt-\[300px\]{padding-top:300px}.lg\:text-left{text-align:left}.lg\:text-center{text-align:center}.lg\:text-start{text-align:start}.lg\:text-2xl{font-size:1.5rem}.lg\:text-3xl{font-size:1.875rem}.lg\:text-4xl{font-size:2.25rem}.lg\:text-5xl{font-size:3rem}.lg\:text-\[22px\]{font-size:22px}.lg\:text-\[42px\]{font-size:42px}.lg\:text-\[50px\]{font-size:50px}.lg\:text-lg{font-size:1.125rem}.lg\:text-sm{font-size:.875rem}.lg\:text-xl{font-size:1.25rem}.lg\:text-xs{font-size:.75rem}.lg\:leading-\[60px\]{line-height:60px}.lg\:before\:block:before{content:var(--tw-content);display:block}.lg\:before\:w-\[70\%\]:before{content:var(--tw-content);width:70%}.lg\:last\:col-span-2:last-child{grid-column:span 2/span 2}.lg\:last\:mx-auto:last-child{margin-left:auto;margin-right:auto}.lg\:last\:w-1\/2:last-child{width:50%}}@media (min-width:1280px){.xl\:mx-0{margin-right:0}.xl\:ml-0,.xl\:mx-0{margin-left:0}.xl\:mr-auto{margin-right:auto}.xl\:block{display:block}.xl\:inline{display:inline}.xl\:hidden{display:none}.xl\:h-\[32px\]{height:32px}.xl\:w-2\/5{width:40%}.xl\:w-3\/5{width:60%}.xl\:w-\[14px\]{width:14px}.xl\:w-\[780px\]{width:780px}.xl\:min-w-\[780px\]{min-width:780px}.xl\:max-w-\[780px\]{max-width:780px}.xl\:bg-center{background-position:50%}.xl\:px-4{padding-left:1rem;padding-right:1rem}.xl\:text-2xl{font-size:1.5rem}.xl\:text-\[39px\]{font-size:39px}.xl\:text-lg{font-size:1.125rem}}@media (min-width:1536px){.\32xl\:inline{display:inline}.\32xl\:hidden{display:none}.\32xl\:max-w-\[720px\]{max-width:720px}}@media (prefers-color-scheme:dark){.dark\:bg-gray-700{--tw-bg-opacity:1;background-color:rgb(47 78 109/var(--tw-bg-opacity))}.dark\:hover\:bg-gray-600:hover{--tw-bg-opacity:1;background-color:rgb(87 112 138/var(--tw-bg-opacity))}.dark\:hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}} .glightbox-container{width:100%;height:100%;position:fixed;top:0;left:0;z-index:999999!important;overflow:hidden;-ms-touch-action:none;touch-action:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;outline:0}.glightbox-container.inactive{display:none}.glightbox-container .gcontainer{position:relative;width:100%;height:100%;z-index:9999;overflow:hidden}.glightbox-container .gslider{-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease;height:100%;left:0;top:0;width:100%;position:relative;overflow:hidden;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.glightbox-container .gslide{width:100%;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;opacity:0}.glightbox-container .gslide.current{opacity:1;z-index:99999;position:relative}.glightbox-container .gslide.prev{opacity:1;z-index:9999}.glightbox-container .gslide-inner-content{width:100%}.glightbox-container .ginner-container{position:relative;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;margin:auto;height:100vh}.glightbox-container .ginner-container.gvideo-container{width:100%}.glightbox-container .ginner-container.desc-bottom,.glightbox-container .ginner-container.desc-top{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.glightbox-container .ginner-container.desc-left,.glightbox-container .ginner-container.desc-right{max-width:100%!important}.gslide iframe,.gslide video{outline:0!important;border:none;min-height:165px;-webkit-overflow-scrolling:touch;-ms-touch-action:auto;touch-action:auto}.gslide:not(.current){pointer-events:none}.gslide-image{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.gslide-image img{max-height:100vh;display:block;padding:0;float:none;outline:0;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:100vw;width:auto;height:auto;-o-object-fit:cover;object-fit:cover;-ms-touch-action:none;touch-action:none;margin:auto;min-width:200px}.desc-bottom .gslide-image img,.desc-top .gslide-image img{width:auto}.desc-left .gslide-image img,.desc-right .gslide-image img{width:auto;max-width:100%}.gslide-image img.zoomable{position:relative}.gslide-image img.dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.gslide-video{position:relative;max-width:100vh;width:100%!important}.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster{display:none}.gslide-video .gvideo-wrapper{width:100%;margin:auto}.gslide-video::before{content:'';position:absolute;width:100%;height:100%;background:rgba(255,0,0,.34);display:none}.gslide-video.playing::before{display:none}.gslide-video.fullscreen{max-width:100%!important;min-width:100%;height:75vh}.gslide-video.fullscreen video{max-width:100%!important;width:100%!important}.gslide-inline{background:#fff;text-align:left;max-height:calc(100vh - 40px);overflow:auto;max-width:100%;margin:auto}.gslide-inline .ginlined-content{padding:20px;width:100%}.gslide-inline .dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.ginlined-content{overflow:auto;display:block!important;opacity:1}.gslide-external{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;min-width:100%;background:#fff;padding:0;overflow:auto;max-height:75vh;height:100%}.gslide-media{display:-webkit-box;display:-ms-flexbox;display:flex;width:auto}.zoomed .gslide-media{-webkit-box-shadow:none!important;box-shadow:none!important}.desc-bottom .gslide-media,.desc-top .gslide-media{margin:0 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gslide-description{position:relative;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%}.gslide-description.description-left,.gslide-description.description-right{max-width:100%}.gslide-description.description-bottom,.gslide-description.description-top{margin:0 auto;width:100%}.gslide-description p{margin-bottom:12px}.gslide-description p:last-child{margin-bottom:0}.zoomed .gslide-description{display:none}.glightbox-button-hidden{display:none}.glightbox-mobile .glightbox-container .gslide-description{height:auto!important;width:100%;position:absolute;bottom:0;padding:19px 11px;max-width:100vw!important;-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important;max-height:78vh;overflow:auto!important;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.75)));background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);-webkit-transition:opacity .3s linear;transition:opacity .3s linear;padding-bottom:50px}.glightbox-mobile .glightbox-container .gslide-title{color:#fff;font-size:1em}.glightbox-mobile .glightbox-container .gslide-desc{color:#a1a1a1}.glightbox-mobile .glightbox-container .gslide-desc a{color:#fff;font-weight:700}.glightbox-mobile .glightbox-container .gslide-desc *{color:inherit}.glightbox-mobile .glightbox-container .gslide-desc .desc-more{color:#fff;opacity:.4}.gdesc-open .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:.4}.gdesc-open .gdesc-inner{padding-bottom:30px}.gdesc-closed .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:1}.greset{-webkit-transition:all .3s ease;transition:all .3s ease}.gabsolute{position:absolute}.grelative{position:relative}.glightbox-desc{display:none!important}.glightbox-open{overflow:hidden}.gloader{height:25px;width:25px;-webkit-animation:lightboxLoader .8s infinite linear;animation:lightboxLoader .8s infinite linear;border:2px solid #fff;border-right-color:transparent;border-radius:50%;position:absolute;display:block;z-index:9999;left:0;right:0;margin:0 auto;top:47%}.goverlay{width:100%;height:calc(100vh + 1px);position:fixed;top:-1px;left:0;background:#000;will-change:opacity}.glightbox-mobile .goverlay{background:#000}.gclose,.gnext,.gprev{z-index:99999;cursor:pointer;width:26px;height:44px;border:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gclose svg,.gnext svg,.gprev svg{display:block;width:25px;height:auto;margin:0;padding:0}.gclose.disabled,.gnext.disabled,.gprev.disabled{opacity:.1}.gclose .garrow,.gnext .garrow,.gprev .garrow{stroke:#fff}.gbtn.focused{outline:2px solid #0f3d81}iframe.wait-autoplay{opacity:0}.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev{opacity:0!important}.glightbox-clean .gslide-description{background:#fff}.glightbox-clean .gdesc-inner{padding:22px 20px}.glightbox-clean .gslide-title{font-size:1em;font-weight:400;font-family:arial;color:#000;margin-bottom:19px;line-height:1.4em}.glightbox-clean .gslide-desc{font-size:.86em;margin-bottom:0;font-family:arial;line-height:1.4em}.glightbox-clean .gslide-video{background:#000}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.75);border-radius:4px}.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path{fill:#fff}.glightbox-clean .gprev{position:absolute;top:-100%;left:30px;width:40px;height:50px}.glightbox-clean .gnext{position:absolute;top:-100%;right:30px;width:40px;height:50px}.glightbox-clean .gclose{width:35px;height:35px;top:15px;right:10px;position:absolute}.glightbox-clean .gclose svg{width:18px;height:auto}.glightbox-clean .gclose:hover{opacity:1}.gfadeIn{-webkit-animation:gfadeIn .5s ease;animation:gfadeIn .5s ease}.gfadeOut{-webkit-animation:gfadeOut .5s ease;animation:gfadeOut .5s ease}.gslideOutLeft{-webkit-animation:gslideOutLeft .3s ease;animation:gslideOutLeft .3s ease}.gslideInLeft{-webkit-animation:gslideInLeft .3s ease;animation:gslideInLeft .3s ease}.gslideOutRight{-webkit-animation:gslideOutRight .3s ease;animation:gslideOutRight .3s ease}.gslideInRight{-webkit-animation:gslideInRight .3s ease;animation:gslideInRight .3s ease}.gzoomIn{-webkit-animation:gzoomIn .5s ease;animation:gzoomIn .5s ease}.gzoomOut{-webkit-animation:gzoomOut .5s ease;animation:gzoomOut .5s ease}@-webkit-keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes gfadeIn{from{opacity:0}to{opacity:1}}@keyframes gfadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes gfadeOut{from{opacity:1}to{opacity:0}}@keyframes gfadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@-webkit-keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@-webkit-keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@-webkit-keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@media (min-width:769px){.glightbox-container .ginner-container{width:auto;height:auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.glightbox-container .ginner-container.desc-top .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.glightbox-container .ginner-container.desc-left .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-left .gslide-image{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.gslide-image img{max-height:97vh;max-width:100%}.gslide-image img.zoomable{cursor:-webkit-zoom-in;cursor:zoom-in}.zoomed .gslide-image img.zoomable{cursor:-webkit-grab;cursor:grab}.gslide-inline{max-height:95vh}.gslide-external{max-height:100vh}.gslide-description.description-left,.gslide-description.description-right{max-width:275px}.glightbox-open{height:auto}.goverlay{background:rgba(0,0,0,.92)}.glightbox-clean .gslide-media{-webkit-box-shadow:1px 2px 9px 0 rgba(0,0,0,.65);box-shadow:1px 2px 9px 0 rgba(0,0,0,.65)}.glightbox-clean .description-left .gdesc-inner,.glightbox-clean .description-right .gdesc-inner{position:absolute;height:100%;overflow-y:auto}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.32)}.glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover{background-color:rgba(0,0,0,.7)}.glightbox-clean .gprev{top:45%}.glightbox-clean .gnext{top:45%}}@media (min-width:992px){.glightbox-clean .gclose{opacity:.7;right:20px}}@media screen and (max-height:420px){.goverlay{background:#000}} /*! Flickity v2.3.0 https://flickity.metafizzy.co ---------------------------------------------- */ .flickity-enabled{position:relative}.flickity-enabled:focus{outline:0}.flickity-viewport{overflow:hidden;position:relative;height:100%}.flickity-slider{position:absolute;width:100%;height:100%}.flickity-enabled.is-draggable{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.flickity-enabled.is-draggable .flickity-viewport{cursor:move;cursor:-webkit-grab;cursor:grab}.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down{cursor:-webkit-grabbing;cursor:grabbing}.flickity-button{position:absolute;background:hsla(0,0%,100%,.75);border:none;color:#333}.flickity-button:hover{background:#fff;cursor:pointer}.flickity-button:focus{outline:0;box-shadow:0 0 0 5px #19f}.flickity-button:active{opacity:.6}.flickity-button:disabled{opacity:.3;cursor:auto;pointer-events:none}.flickity-button-icon{fill:currentColor}.flickity-prev-next-button{top:50%;width:44px;height:44px;border-radius:50%;transform:translateY(-50%)}.flickity-prev-next-button.previous{left:10px}.flickity-prev-next-button.next{right:10px}.flickity-rtl .flickity-prev-next-button.previous{left:auto;right:10px}.flickity-rtl .flickity-prev-next-button.next{right:auto;left:10px}.flickity-prev-next-button .flickity-button-icon{position:absolute;left:20%;top:20%;width:60%;height:60%}.flickity-page-dots{position:absolute;width:100%;bottom:-25px;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.flickity-rtl .flickity-page-dots{direction:rtl}.flickity-page-dots .dot{display:inline-block;width:10px;height:10px;margin:0 8px;background:#333;border-radius:50%;opacity:.25;cursor:pointer}.flickity-page-dots .dot.is-selected{opacity:1} </style> <!-- JavaScript --> <script src="https://cdn.haproxy.com/assets/js/flickity.min.js?id=f008f38402e0f28ae683ab8ef252a231" defer></script> </head> <body class="leading-relaxed" x-data="{ open: false, products: false, solutions: false, resources: false, support: false, company: false, contactus: false, gethaproxy: false, mobilenav: false, langDropdown: false, }" :class="{ 'overflow-hidden': mobilenav, 'overflow-y-auto': !mobilenav, }"> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W9N2N3S" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <div id="cookie-banner" class=" bg-gray-50 border border-gray-400 rounded w-full md:w-[500px] fixed shadow-lg z-[10001] px-default p-5 gap-4 bottom-0 md:bottom-[20px] md:right-[20px] md:left-auto " x-init=" if (localStorage.getItem('cookieBannerConsent') === null) { localStorage.setItem('cookieBannerConsent', null); } if (localStorage.getItem('cookieBannerConsentDate') === null) { localStorage.setItem('cookieBannerConsentDate', null); } if (localStorage.getItem('cookieBannerAdStorage') === null) { localStorage.setItem('cookieBannerAdStorage', false); } if (localStorage.getItem('cookieBannerAnalyticsStorage') === null) { localStorage.setItem('cookieBannerAnalyticsStorage', false); } if (localStorage.getItem('cookieBannerAdUserData') === null) { localStorage.setItem('cookieBannerAdUserData', false); } if (localStorage.getItem('cookieBannerAdPersonalization') === null) { localStorage.setItem('cookieBannerAdPersonalization', false); } cookieBannerStorager(); if($store.cookieBanner.checkDates(cookieConsentDate) && (!adStorage || !analyticsStorage)){ $store.cookieBanner.set(null) } if (localStorage.getItem('cookieUserId') === null || localStorage.getItem('cookieUserId') === '') { const newId = Alpine.store('cookieBanner').uniqueId() localStorage.setItem('cookieUserId', newId); userId = newId; } Alpine.store('cookieBannerConsent', JSON.parse(localStorage.getItem('cookieBannerConsent')) === null ? false : true); " x-show="getCookie('GDIR') != 'pass' && Alpine.store('cookieBannerConsent') != true" style="display: none;" x-data="{ cookieBannerConsent: JSON.parse(localStorage.getItem('cookieBannerConsent')) === null ? false : true, info: false, adStorage: (JSON.parse(localStorage.getItem('cookieBannerAdStorage')) === null || JSON.parse(localStorage.getItem('cookieBannerAdStorage')) === true) ? true : false, analyticsStorage: (JSON.parse(localStorage.getItem('cookieBannerAnalyticsStorage')) === null || JSON.parse(localStorage.getItem('cookieBannerAnalyticsStorage')) === true) ? true : false, adUserData: (JSON.parse(localStorage.getItem('cookieBannerAdUserData')) === null || JSON.parse(localStorage.getItem('cookieBannerAdUserData')) === true) ? true : false, adPersonalization: (JSON.parse(localStorage.getItem('cookieBannerAdPersonalization')) === null || JSON.parse(localStorage.getItem('cookieBannerAdPersonalization')) === true) ? true : false, cookieConsentDate: JSON.parse(localStorage.getItem('cookieBannerConsentDate')), userId: localStorage.getItem('cookieUserId') ?? '', }" > <div class="px-2 text-sm"> <h2 class="mt-0 mb-3 text-sm font-semibold text-blue-800">Privacy Settings</h2> <span>HAProxy's website uses cookies. By proceeding, you consent to our cookie usage. Please see our Privacy Policy and Cookie Policy for cookie usage details and instructions on how to disable cookies.</span> <div class="pt-3 space-x-2"> <a class="text-xs font-semibold text-gray-600" href="/legal/privacy-policy/">Privacy and Cookie Policy</a> <a class="text-xs font-semibold text-gray-600" href="#" @click.prevent="info = !info" > More information </a> </div> </div> <div x-show="info" x-transition:enter="transition ease-out duration-150" x-transition:enter-start="opacity-0" x-transition:enter-end="opacity-100" x-transition:leave="transition ease-in duration-0" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0" class="px-2 mx-2 mt-4 border-t-2 border-gray-100" > <div class="flex flex-col mt-4 space-y-4"> <label class="flex items-center justify-between space-x-4"> <span class="flex flex-col flex-1"> <span class="text-xs font-bold">Functional</span> <span class="text-xs text-gray-600">Cookies that make the website usable.</span> </span> <input class="w-5 h-5 mr-3 rounded opacity-50 border-gray text-primary focus:outline-none focus-visible:ring focus-visible:ring-primary motion-safe:transition" type="checkbox" name="functional" checked disabled > </label> <label class="flex items-center justify-between space-x-4"> <span class="flex flex-col flex-1"> <span class="text-xs font-bold">Analytics</span> <span class="text-xs text-gray-600">Help website owners understand how visitors interact with websites.</span> </span> <input class="w-5 h-5 mr-3 rounded border-gray text-primary focus:outline-none focus-visible:ring focus-visible:ring-primary motion-safe:transition" type="checkbox" name="analytics_storage" x-model="analyticsStorage" checked > </label> <label class="flex items-center justify-between space-x-4"> <span class="flex flex-col flex-1"> <span class="text-xs font-bold">Ads</span> <span class="text-xs text-gray-600">Enables advertising related storage.</span> </span> <input class="w-5 h-5 mr-3 rounded border-gray text-primary focus:outline-none focus-visible:ring focus-visible:ring-primary motion-safe:transition" type="checkbox" name="ad_storage" x-model="adStorage" > </label> <label class="flex items-center justify-between space-x-4"> <span class="flex flex-col flex-1"> <span class="text-xs font-bold">User data</span> <span class="text-xs text-gray-600">Consent for sending user data to Google for advertising purposes.</span> </span> <input class="w-5 h-5 mr-3 rounded border-gray text-primary focus:outline-none focus-visible:ring focus-visible:ring-primary motion-safe:transition" type="checkbox" name="ad_user_data" x-model="adUserData" > </label> <label class="flex items-center justify-between space-x-4"> <span class="flex flex-col flex-1"> <span class="text-xs font-bold">Ad personalization</span> <span class="text-xs text-gray-600">Consent for personalized advertising.</span> </span> <input class="w-5 h-5 mr-3 rounded border-gray text-primary focus:outline-none focus-visible:ring focus-visible:ring-primary motion-safe:transition" type="checkbox" name="ad_personalization" x-model="adPersonalization" > </label> </div> <div class="mt-4" x-data="{ show: false }"> <div x-show="cookieConsentDate"> <div class="cursor-pointer" @click="show = !show"> <span class="pt-2 text-xs font-medium text-gray-600"> Show details </span> <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.0" stroke="currentColor" class="text-gray-600 duration-300 w-[16px] h-[16px] inline-block group-hover:hidden -mt-[3px]" x-bind:class="show ? 'transform rotate-180' : ''"> <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5"></path> </svg> </div> <div x-show="show && cookieConsentDate" x-transition.opacity x-transition:enter.duration.100ms x-transition:leave.duration.100ms> <div class="p-3 mt-1 space-y-2 text-sm border rounded-lg bg-gray-50"> <div> <span class="block text-xs"> <b> Consent date: </b> </span> <span class="block text-xs text-gray-600" x-text="cookieConsentDate"></span> </div> <div> <span class="block text-xs"> <b> User Unique Id: </b> </span> <span class="block text-xs text-gray-600" x-text="userId"></span> </div> </div> </div> </div> </div> </div> <div class="flex flex-wrap items-center gap-3 mt-6"> <div class="w-full text-center md:flex-1"> <a class="p-0 m-0 text-sm text-gray-600 btn-transparent" href="#" @click.prevent=" localStorage.setItem('cookieBannerConsent', true), Alpine.store('cookieBannerConsent', true), gtag('consent', 'update', { 'analytics_storage': 'denied', 'functionality_storage': 'granted', 'ad_storage': 'denied', 'ad_user_data': 'denied', 'ad_personalization': 'denied' }), analyticsStorage = false, adStorage = false, adUserData = false, adPersonalization = false, cookieConsentDate = Alpine.store('cookieBanner').now(), userId = localStorage.getItem('cookieUserId') != null ? localStorage.getItem('cookieUserId') : Alpine.store('cookieBanner').uniqueId() , info = false, localStorage.setItem('cookieBannerConsentDate', cookieConsentDate), localStorage.setItem('cookieBannerAdStorage', adStorage), localStorage.setItem('cookieBannerAnalyticsStorage', analyticsStorage), localStorage.setItem('cookieBannerAdUserData', adUserData), localStorage.setItem('cookieBannerAdPersonalization', adPersonalization), localStorage.setItem('cookieUserId', userId) " > Deny </a> </div> <a x-show="info" class="w-full px-4 py-2 my-0 text-sm text-center text-gray-600 bg-gray-100 border border-gray-100 btn-secondary md:flex-1" href="#" @click.prevent=" localStorage.setItem('cookieBannerConsent', 'true'), Alpine.store('cookieBannerConsent', true), cookieConsentDate = Alpine.store('cookieBanner').now(), userId = localStorage.getItem('cookieUserId') != null ? localStorage.getItem('cookieUserId') : Alpine.store('cookieBanner').uniqueId() , info = false, localStorage.setItem('cookieBannerConsentDate', cookieConsentDate), localStorage.setItem('cookieBannerAdStorage', adStorage), localStorage.setItem('cookieBannerAdUserData', adUserData), localStorage.setItem('cookieBannerAdPersonalization', adPersonalization), localStorage.setItem('cookieBannerAnalyticsStorage', analyticsStorage), localStorage.setItem('cookieUserId', userId) gtag('consent', 'update', { 'ad_user_data': adUserData ? 'granted' : 'denied', 'ad_personalization': adPersonalization ? 'granted' : 'denied', 'ad_storage': adStorage ? 'granted' : 'denied', 'analytics_storage': analyticsStorage ? 'granted' : 'denied', 'functionality_storage': 'granted' }); " > Save </a> <a class="w-full px-4 py-2 my-0 text-sm text-center btn-primary md:flex-1 " href="#" @click.prevent=" localStorage.setItem('cookieBannerConsent', 'true'), Alpine.store('cookieBannerConsent', true), gtag('consent', 'update', { 'analytics_storage': 'granted', 'functionality_storage': 'granted', 'ad_storage': 'granted', 'ad_user_data': 'granted', 'ad_personalization': 'granted' }), analyticsStorage = true, adStorage = true, adUserData = true, adPersonalization = true, cookieConsentDate = Alpine.store('cookieBanner').now(), userId = localStorage.getItem('cookieUserId') != null ? localStorage.getItem('cookieUserId') : Alpine.store('cookieBanner').uniqueId() , info = false, localStorage.setItem('cookieBannerConsentDate', cookieConsentDate), localStorage.setItem('cookieBannerAdStorage', adStorage), localStorage.setItem('cookieBannerAdUserData', adUserData), localStorage.setItem('cookieBannerAdPersonalization', adPersonalization), localStorage.setItem('cookieBannerAnalyticsStorage', analyticsStorage), localStorage.setItem('cookieUserId', userId) " > Accept and close </a> </div> </div> <div class="newsbar hidden md:flex flex-row flex-wrap lg:justify-center items-center w-full md:fixed h-[35px] z-[60]" > <div class="hidden leading-relaxed newsbar__text px-default lg:text-center md:block"> <a href="https://www.haproxyconf.com/" target="_blank" class="!no-underline !text-white hover:no-underline"> <p><strong>HAProxyConf 2025</strong> - <u>Registrations are Open!</u></p> </a> </div> <div class="absolute right-0 w-full px-default md:w-auto"> <ul class="flex flex-row flex-wrap newsbar__localemenu"> <li class="newsbar__localemenu--item"> <a href="/blog">Blog</a> </li> <li class="newsbar__localemenu--item"> <a href="https://my.haproxy.com/portal/cust/login">Customer Login</a> </li> <li class="relative newsbar__localemenu--item group"> <span> English <svg class="w-4 h-4 inline-block -mt-[3px] transform group-hover:rotate-180 duration-75" stroke="currentColor" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" /> </svg> </span> <ul class="newsbar__localemenu--popover z-[10] !ml-0 absolute opacity-0 duration-75 group-hover:block group-hover:opacity-100 hidden right-0 top-[35px]"> <li class="block !m-0 text-center leading-none py-2"> <a class="px-4" href="/fr/products/haproxy-enterprise"> French </a> </li> <li class="block !m-0 text-center leading-none py-2"> <a class="px-4" href="/de/products/haproxy-enterprise"> German </a> </li> </ul> </li> </ul> </div> </div> <header id="mainheader"> <div class="container-fluid mx-auto flex flex-row items-center min-h-[66px]"> <div class="max-w-[260px] py-auto pl-4"> <a href="/" class="block h-[49px] w-auto"> <svg class="h-[49px] w-auto" viewBox="0 0 377 89" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M126.07 63.93V48.17h-19.26v15.76H99.8V25.41h7.01v15.76h19.26V25.41h7v38.52h-7Z" fill="#5899D4"/><path d="M169.67 56.05h-19.8l-3.61 7.88h-7.72l17.28-38.52h7.85l17.26 38.52h-7.79l-3.47-7.88Zm-9.93-23.36-7.12 16.35h14.27l-7.15-16.35Z" fill="#3D6DA5"/><path d="M204.86 52.55h-11.38v11.38h-7V25.41l18.3-.07c18.76 0 18.8 27.17 0 27.17m-11.26-6.96h11.16c9.54 0 9.46-14.01 0-14.01h-11.2l.04 14.01Zm64.28 18.38h-7.22L239.1 50.8H232v13.13h-7V25.41l17.61.07c8.74.07 13.35 6.08 13.35 12.74 0 5.29-2.32 10.62-9.36 12.1l11.23 13.14-.03.47ZM232 31.54V43.8h11c4.59 0 6.56-3.05 6.56-6.13s-2.01-6.13-6.56-6.13h-11Zm68.3 12.92c-.11 9.92-6.22 19.87-19.69 19.87-13.47 0-19.77-9.7-19.77-19.8 0-10.1 6.47-20.23 19.77-20.23s19.8 10.13 19.69 20.16Zm-32.31.18c.18 6.33 3.56 13.05 12.61 13.05 9.05 0 12.47-6.79 12.58-13.12.11-6.33-3.52-13.73-12.58-13.73s-12.79 7.33-12.61 13.8Z" fill="#26405F"/><path d="M327.39 25.41h7.91v-.04l-12.97 18.66 13.85 19.19v.71h-8.57l-9.81-14.91-9.85 14.91h-8.54v-.71l13.79-19.19-12.91-18.66v.04h7.91l9.6 13.94 9.59-13.94Zm29.96 15.9 10.28-15.9h8.82v.32l-14.88 22.29v15.91h-7.88V48.02l-14.88-22.29v-.32h8.69l9.85 15.9Z" fill="#26405F"/><path d="m35.156 22.428.27-.238 9.234 10.456-.27.238-9.234-10.456Z" fill="#2A4A6C"/><path d="m15.45 24.71 7.26 10.49-.15.11-7.26-10.5.15-.1Zm28.94 7.95 9.2-10.5.27.24-9.2 10.5-.27-.24ZM55.478 44.32l10.892-9.203.232.275-10.892 9.204-.232-.275Z" fill="#2A4A6C"/><path d="m55.71 44.32 10.89 9.56-.24.27-10.89-9.56.24-.27ZM44.383 55.899l.267-.241 9.235 10.241-.268.241L44.383 55.9Z" fill="#2A4A6C"/><path d="m35.191 65.894 9.202-10.244.268.24-9.202 10.245-.268-.24ZM22.52 53.442l10.492-9.163.237.272-10.492 9.162-.237-.27Z" fill="#2A4A6C"/><path d="m22.519 35.397.237-.271 10.492 9.162-.237.272-10.492-9.163Z" fill="#2A4A6C"/><path d="m44.54 32.96-21.88 2.48-.04-.36L44.5 32.6l.04.36Z" fill="#2A4A6C"/><path d="m44.54 32.6 21.96 2.48-.04.36-21.96-2.48.04-.36Z" fill="#2A4A6C"/><path d="M55.41 44.47 53.54 22.3l.37-.03 1.86 22.17-.36.03Z" fill="#2A4A6C"/><path d="m55.77 44.47-1.83 21.56-.36-.03 1.83-21.56.36.03Z" fill="#2A4A6C"/><path d="m66.5 54.2-21.96 1.76-.03-.36 21.96-1.76.03.36Z" fill="#2A4A6C"/><path d="m22.621 53.77.036-.359 21.89 2.193-.035.358-21.89-2.192Z" fill="#2A4A6C"/><path d="m35.14 66.04-2.19-21.6.36-.04L35.5 66l-.36.04Z" fill="#2A4A6C"/><path d="m35.47 22.34-2.16 22.1-.36-.04 2.16-22.1.36.04ZM12.55 38.01l10.06-2.84.05.17-10.06 2.84-.05-.17Z" fill="#2A4A6C"/><path d="m24.698 14.92.104-.147 10.528 7.473-.105.147-10.527-7.473Z" fill="#2A4A6C"/><path d="m35.2 22.298 2.407-12.215.177.035-2.408 12.215-.176-.035Z" fill="#2A4A6C"/><path d="m37.64 10.165.108-.143 16.026 12.182-.109.143L37.64 10.165Z" fill="#2A4A6C"/><path d="m51.41 10.08 2.4 12.18-.18.04-2.4-12.18.18-.04Z" fill="#2A4A6C"/><path d="m64.31 14.92-10.53 7.44-.11-.15 10.53-7.44.11.15Z" fill="#2A4A6C"/><path d="m73.66 24.85-19.95-2.48.03-.18 19.94 2.48-.02.18Z" fill="#2A4A6C"/><path d="m66.41 35.2 7.18-10.49.16.1-7.19 10.5-.15-.11Z" fill="#2A4A6C"/><path d="m66.51 35.17 10.24 2.84-.05.17-10.24-2.84.05-.17Z" fill="#2A4A6C"/><path d="m66.56 35.21 9.99 15.31-.15.1-9.99-15.31.15-.1ZM51.37 10.17 35.34 22.39l-.11-.14 16.03-12.22.11.14Z" fill="#2A4A6C"/><path d="m66.39 35.27-2.23-20.42.19-.02 2.22 20.42-.18.02Zm.06 18.66 9.99-3.45.06.17-9.99 3.45-.06-.17Z" fill="#2A4A6C"/><path d="m66.4 53.961 10.24-15.92.152.097-10.24 15.92-.152-.097Z" fill="#2A4A6C"/><path d="m66.56 53.96 7.18 9.74-.14.11-7.19-9.74.15-.11Z" fill="#2A4A6C"/><path d="m64.196 73.653 2.191-19.658.179.02-2.191 19.658-.18-.02Z" fill="#2A4A6C"/><path d="m53.81 65.95 10.53 7.65-.1.15-10.53-7.66.1-.14Z" fill="#2A4A6C"/><path d="m53.75 65.93 19.91-2.27.02.19-19.91 2.26-.02-.18Z" fill="#2A4A6C"/><path d="m53.85 66.04-2.41 12.4-.18-.04L53.67 66l.18.04Z" fill="#2A4A6C"/><path d="m53.82 66.09-16.03 12.4-.11-.14 16.02-12.4.12.14Z" fill="#2A4A6C"/><path d="m35.41 66 2.41 12.4-.18.04-2.41-12.4.18-.04Z" fill="#2A4A6C"/><path d="m35.274 66.086.11-.143L51.41 78.338l-.11.143-16.026-12.395Z" fill="#2A4A6C"/><path d="m35.38 66.09-10.53 7.66-.11-.15 10.53-7.65.11.14Z" fill="#2A4A6C"/><path d="m35.31 66.11-19.94-2.19.02-.18 19.94 2.19-.02.18Z" fill="#2A4A6C"/><path d="m22.71 53.64-7.26 10.24-.15-.11 7.26-10.24.15.11Z" fill="#2A4A6C"/><path d="m22.541 53.592.18-.02 2.157 20.095-.179.02-2.158-20.095Z" fill="#2A4A6C"/><path d="m22.61 53.67-10.1-3.16.06-.17 10.09 3.16-.05.17Z" fill="#2A4A6C"/><path d="M22.71 35.31 12.62 50.47l-.16-.1 10.1-15.16.15.1Z" fill="#2A4A6C"/><path d="M22.56 53.63 12.5 38.15l.15-.1 10.06 15.49-.15.09Zm2.29-38.78-2.12 20.42-.18-.02 2.12-20.42.18.02Z" fill="#2A4A6C"/><path d="m15.364 24.67 19.91-2.444.022.178-19.91 2.445-.022-.178ZM17.006 11.197l.06-.126 7.73 3.703-.061.127-7.73-3.704Z" fill="#2A4A6C"/><path d="m24.114 6.364.14-.01.575 8.481-.14.01-.575-8.48Z" fill="#2A4A6C"/><path d="M37.68 10.17 24.16 6.43l.04-.13 13.51 3.73-.03.14Z" fill="#2A4A6C"/><path d="m31.892 2.955.11-.087 5.747 7.184-.11.087-5.747-7.184Z" fill="#2A4A6C"/><path d="m37.63 10.08 2.44-8.52.14.04-2.45 8.52-.13-.04ZM24.705 14.806l7.19-11.932.12.073-7.19 11.931-.12-.072Z" fill="#2A4A6C"/><path d="m40.1 1.633.084-.111 11.175 8.516-.085.111L40.1 1.633Z" fill="#2A4A6C"/><path d="m51.25 10.12-2.51-8.84.13-.04 2.51 8.84-.13.04Z" fill="#2A4A6C"/><path d="M37.658 10.045 48.76 1.207l.087.11-11.102 8.837-.087-.11ZM51.26 10.06l5.83-7.19.1.08-5.82 7.19-.11-.08Z" fill="#2A4A6C"/><path d="m57.082 2.943.12-.071 7.115 11.93-.12.071-7.115-11.93Z" fill="#2A4A6C"/><path d="m64.19 14.84.75-8.48.14.01-.76 8.48-.13-.01Z" fill="#2A4A6C"/><path d="m51.306 10.022 13.69-3.738.036.136-13.689 3.737-.037-.135ZM64.22 14.78l7.91-4.09.06.12-7.9 4.09-.07-.12Z" fill="#2A4A6C"/><path d="m64.26 14.78 13.8 2.08-.02.14-13.8-2.09.02-.13Z" fill="#2A4A6C"/><path d="M73.61 24.73 78 16.89l.11.07-4.38 7.84-.12-.07Z" fill="#2A4A6C"/><path d="m73.6 24.77-1.51-14.02.14-.01 1.51 14.02-.14.01Z" fill="#2A4A6C"/><path d="m73.654 24.704 9.059-.754.011.14-9.058.754-.012-.14Z" fill="#2A4A6C"/><path d="m73.7 24.7 12.44 7.05-.07.12-12.43-7.05.06-.12Z" fill="#2A4A6C"/><path d="m76.66 38.07 6-14.09.13.05-6 14.09-.13-.05Z" fill="#2A4A6C"/><path d="m76.688 38.037 9.377-6.287.078.116-9.377 6.287-.078-.116Z" fill="#2A4A6C"/><path d="m76.74 38.03 10.46 2.12-.03.13-10.46-2.12.03-.13Z" fill="#2A4A6C"/><path d="m76.43 50.52 10.71-10.35.09.1-10.71 10.35-.09-.1Z" fill="#2A4A6C"/><path d="m76.46 50.49 10.96-2.049.026.138-10.96 2.049-.025-.138Z" fill="#2A4A6C"/><path d="m76.674 38.145.097-.1 10.707 10.419-.097.1-10.707-10.42ZM76.444 50.62l.077-.117 9.377 6.251-.077.117-9.377-6.252Z" fill="#2A4A6C"/><path d="m73.64 63.7 12.18-6.94.07.12-12.19 6.93-.06-.11Z" fill="#2A4A6C"/><path d="m73.663 63.827.014-.14 8.985.899-.014.139-8.985-.898Z" fill="#2A4A6C"/><path d="m76.54 50.54 6.18 14.09-.13.05-6.18-14.09.13-.05ZM73.609 63.786l.123-.066 4.276 7.942-.123.066-4.276-7.941Z" fill="#2A4A6C"/><path d="m71.985 77.622 1.617-13.876.14.016-1.618 13.876-.14-.016Z" fill="#2A4A6C"/><path d="m64.26 73.745.064-.124 7.761 3.953-.063.124-7.762-3.953Z" fill="#2A4A6C"/><path d="m64.36 73.67.61 8.7-.14.01-.61-8.7.14-.01Z" fill="#2A4A6C"/><path d="m64.28 73.61 13.66-1.98.02.14-13.66 1.97-.02-.13Z" fill="#2A4A6C"/><path d="m57.078 85.749 7.154-12.116.12.071L57.2 85.82l-.12-.071Z" fill="#2A4A6C"/><path d="m51.41 78.38 5.78 7.36-.1.09-5.79-7.37.11-.08Z" fill="#2A4A6C"/><path d="m51.37 78.35 13.55 3.96-.04.13-13.55-3.96.04-.13Z" fill="#2A4A6C"/><path d="m51.42 78.44-2.55 9.02-.13-.04 2.55-9.02.13.04Z" fill="#2A4A6C"/><path d="m51.39 78.47-11.17 9.02-.09-.1 11.18-9.02.08.1Z" fill="#2A4A6C"/><path d="m37.8 78.4 2.44 9.02-.13.04-2.44-9.02.13-.04Z" fill="#2A4A6C"/><path d="m37.691 78.474.088-.109 11.07 9.022-.088.108-11.07-9.022Z" fill="#2A4A6C"/><path d="m31.925 85.746 5.753-7.37.11.086-5.752 7.37-.11-.086Z" fill="#2A4A6C"/><path d="m24.85 73.64 7.19 12.11-.12.07-7.18-12.11.11-.07Z" fill="#2A4A6C"/><path d="m37.75 78.48-13.62 4.17-.04-.13 13.62-4.17.04.13Z" fill="#2A4A6C"/><path d="m24.86 73.68-.68 8.91-.14-.01.69-8.91.13.01Z" fill="#2A4A6C"/><path d="m24.83 73.73-7.87 4.28-.07-.12 7.87-4.28.07.12Z" fill="#2A4A6C"/><path d="m15.45 63.82 1.54 14.12-.13.02-1.55-14.13.14-.01Z" fill="#2A4A6C"/><path d="m24.79 73.74-13.77-1.87.02-.13 13.76 1.87-.01.13Z" fill="#2A4A6C"/><path d="m10.973 71.777 4.35-7.982.123.067-4.35 7.982-.123-.067Z" fill="#2A4A6C"/><path d="m15.38 63.9-8.98.86-.01-.14 8.98-.86.01.14Z" fill="#2A4A6C"/><path d="M15.34 63.89 2.95 56.95l.06-.12 12.4 6.94-.07.12Z" fill="#2A4A6C"/><path d="m2.945 56.835 9.557-6.468.079.116-9.557 6.468-.079-.116Z" fill="#2A4A6C"/><path d="m12.53 50.49-10.86-1.9.03-.14 10.85 1.9-.02.14Z" fill="#2A4A6C"/><path d="M12.6 50.45 6.46 64.72l-.13-.06 6.15-14.26.12.05Zm.02-12.31L1.73 48.57l-.09-.1 10.89-10.42.09.09Z" fill="#2A4A6C"/><path d="M12.49 50.47 1.6 40.27l.1-.1 10.89 10.2-.1.1Zm.05-12.32-9.31-6.18.07-.11 9.31 6.18-.07.11Z" fill="#2A4A6C"/><path d="m1.637 40.15 10.926-2.12.027.137-10.926 2.12-.027-.138Z" fill="#2A4A6C"/><path d="M12.51 38.12 6.37 24.11l.12-.06 6.15 14.02-.13.05Z" fill="#2A4A6C"/><path d="m6.417 24.137.01-.14 8.944.682-.01.14-8.944-.682Z" fill="#2A4A6C"/><path d="m3.235 31.859 12.116-7.154.071.12L3.307 31.98l-.072-.12Z" fill="#2A4A6C"/><path d="m11.078 17.322.122-.07 4.239 7.472-.122.069-4.239-7.471Z" fill="#2A4A6C"/><path d="m15.31 24.75 1.65-13.62.14.02-1.65 13.62-.14-.02Z" fill="#2A4A6C"/><path d="m11.132 17.221 13.622-2.444.025.138-13.622 2.444-.025-.138Z" fill="#2A4A6C"/><path d="m39.4 37.59.07-10.43 10.43.07-.07 10.43-10.43-.07ZM28.02 49.85l.07-10.43 10.43.07-.07 10.43-10.43-.07ZM39.4 61.23l.07-10.43 10.43.07-.07 10.43-10.43-.07Zm11.38-11.38.07-10.43 10.43.07-.07 10.43-10.43-.07Z" fill="#3D6DA5"/><path d="m19.26 38.49.05-6.95 6.96.05-.05 6.96-6.96-.05v-.01Zm12.26-13.13.05-6.96 6.96.05-.05 6.96-6.96-.05Zm18.38 0 .05-6.96 6.95.05-.05 6.96-6.96-.05h.01Zm13.13 13.11.07-6.93 6.93.07-.07 6.93-6.93-.07Zm0 18.41.05-6.96 6.96.05-.05 6.96-6.96-.05ZM49.9 70.01l.05-6.96 6.96.05-.05 6.96-6.96-.05Zm-18.38 0 .05-6.96 6.96.05-.05 6.96-6.95-.05h-.01ZM19.26 56.86l.07-6.93 6.93.07-.07 6.93-6.93-.07Z" fill="#4D76B9"/><path d="m13.13 27.12.04-5.22 5.22.04-.04 5.22-5.22-.04Zm8.75-9.63.04-5.22 5.22.04-.04 5.22-5.22-.04Zm13.13-4.38.04-5.22 5.22.04-.04 5.22-5.22-.04Zm13.98-5.22 4.41-.03.03 4.41-4.41.03-.03-4.41Zm13.13 4.38 4.41-.03.03 4.41-4.41.03-.03-4.41Zm9.63 10.51 4.41-.03.03 4.41-4.41.03-.03-4.41Zm2.63 13.13 4.41-.03.03 4.41-4.41.03-.03-4.41Zm-.84 17.47.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-2.63 13.13.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-9.63 9.63.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-12.26 5.25.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-13.16-5.22 4.41-.03.03 4.41-4.41.03-.03-4.41Zm-13.13-4.38 4.41-.03.03 4.41-4.41.03-.03-4.41ZM13.1 61.28l4.41-.03.03 4.41-4.41.03-.03-4.41Zm-2.63-13.13 4.41-.03.03 4.41-4.41.03-.03-4.41Zm.03-7.04.03-5.22 4.35.04-.03 5.22-4.35-.04Z" fill="#5899D4"/><path d="m15.76 12.26.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-6.13 6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-4.38 7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm-3.5 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02ZM0 41.15l.02-2.61 2.61.02-.02 2.61L0 41.15Zm0 8.76.02-2.61 2.61.02-.02 2.61L0 49.91Zm1.75 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm3.5 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm4.38 7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm6.13 6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7 5.25.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.88 2.63.02-2.61 2.61.02-.02 2.61-2.61-.02Zm8.75 1.75.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.88-2.61h2.63v2.63h-2.63v-2.63Zm8.75.86.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.86-5.23 2.64-.02.02 2.64-2.65.02-.02-2.65.01.01Zm7.02-2.64.02-2.61 2.61.02-.02 2.61-2.61-.02Zm6.13-6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm4.38-7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm3.5-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm.88-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm0-8.75.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-.88-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-3.5-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-4.38-7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm-6.13-6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7-4.38.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7.88-3.5.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-8.75-1.75.02-2.61h2.61l-.02 2.63-2.61-.02ZM39.38.02 42.02 0l.02 2.65-2.65.02-.02-2.64.01-.01Zm-8.74 4.36.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7.9.89 2.64-.02.02 2.65-2.64.02-.02-2.64v-.01Z" fill="#5EA8D9"/></svg> </a> </div> <div class="flex-row-reverse items-center hidden grow lg:flex"> <nav class="main-nav"> <ul class="flex flex-row list-none"> <li class="main-nav__item"> <span class="main-nav__item--link whitespace-nowrap" :class="{ 'active': products }" @click="products = !products" > Products <svg class="w-[8px] h-[14px] xl:w-[14px] xl:h-[32px] inline-block duration-75 -mt-[3px]" :class="{'rotate-180': products }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.0" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" /> </svg> </span> <div x-show="products" @click.away="products = false" style="display:none;" class="shadow-lg z-[500] border-t border-b-4 bg-white absolute left-0 right-0 top-[66px]" > <div class="supermenu-bg section"> <div class="container flex flex-row border-[#3f6da4]"> <div class="hidden w-1/4 my-auto px-default"> </div> <div class="flex flex-row flex-wrap w-3/4 bg-white products-overview"> <div class="w-full col-span-2 px-default"> <h2 class="uppercase section-heading"> PRODUCTS OVERVIEW </h2> </div> <div class="w-1/2 supermenu-item products-overview__product-item"> <a class="relative font-bold hover:!text-blue-700 block px-default " href="/products/haproxy-enterprise" > <span class="block pb-1">HAProxy Enterprise</span> <p class="text-sm font-normal text-gray-700 font-base">An enterprise-class software load balancer with cutting edge features, suite of add-ons, and support.</p> </a> </div> <div class="w-1/2 supermenu-item products-overview__product-item"> <a class="relative font-bold hover:!text-blue-700 block px-default " href="/products/haproxy-edge" > <span class="block pb-1">HAProxy Edge</span> <p class="text-sm font-normal text-gray-700 font-base">A globally distributed application delivery network, or ADN, with turnkey services at massive scale.</p> </a> </div> <div class="w-1/2 supermenu-item products-overview__product-item"> <a class="relative font-bold hover:!text-blue-700 block px-default " href="/products/haproxy-aloha" > <span class="block pb-1">HAProxy ALOHA</span> <p class="text-sm font-normal text-gray-700 font-base">A plug-and-play hardware or virtual load balancer based on HAProxy Enterprise.</p> </a> </div> <div class="w-1/2 supermenu-item products-overview__product-item"> <a class="relative font-bold hover:!text-blue-700 block px-default " href="/products/haproxy-fusion-control-plane" > <span class="block pb-1">HAProxy Fusion Control Plane</span> <p class="text-sm font-normal text-gray-700 font-base">Manage all of your HAProxy Enterprise instances from a single, graphical interface or directly through its API.</p> </a> </div> <div class="w-1/2 supermenu-item products-overview__product-item"> <a class="relative font-bold hover:!text-blue-700 block px-default " href="/products/haproxy-enterprise-kubernetes-ingress-controller" > <span class="block pb-1">HAProxy Enterprise Kubernetes Ingress Controller</span> <p class="text-sm font-normal text-gray-700 font-base">Route traffic into a Kubernetes cluster leveraging powerful features of HAProxy Enterprise.</p> </a> </div> </div> <div class="w-1/4 mb-3 space-y-6 mt-7 px-default dark-menu"> <div class="text-sm"> <a class="text-[#3f6da4]" href="/success-stories" > <h2 class="section-heading uppercase !mb-2 mt-0"> SUCCESS STORIES </h2> </a> <a class="font-bold" href="/success-stories" > <img class="mb-2" src="https://cdn.haproxy.com/img/containers/assets/supermenu/logos-transparent.png/587d7b69b40effa1c055faca9e8efe25/logos-transparent.png" alt="logos-transparent.png" width="230" height="36" loading="lazy"> </a> <a class="font-bold" href="/success-stories" > View All Success Stories </a> </div> <div class="text-sm"> <a class="font-bold" href="/g2-report" > <img class="mb-2" src="https://cdn.haproxy.com/img/containers/assets/supermenu/hapee-trial-g2-badges-customer-reviews-and-rating-winter-2025_1.png/6035fe034a9ba22b4b9637f008aa5e23/hapee-trial-g2-badges-customer-reviews-and-rating-winter-2025_1.png" alt="hapee-trial-g2-badges-customer-reviews-and-rating-winter-2025_1.png" width="230" height="35" loading="lazy"> </a> <a class="font-bold" href="/g2-report" > Read About Our G2 Results </a> </div> </div> </div> </div> <div class="menu-promo-bar py-3 bg-blue-300 text-white"> <div class="container px-default nop text-center font-main md:text-lg font-bold"> <p><a target="_blank" href="https://www.haproxyconf.com" title="HAProxyConf 2025 | San Francisco">HAProxyConf 2025 is coming to San Francisco | Learn more</a></p> </div> </div> </div> </li> <li class="main-nav__item"> <span class="main-nav__item--link whitespace-nowrap" :class="{ 'active': solutions }" @click="solutions = !solutions" > Solutions <svg class="w-[8px] h-[14px] xl:w-[14px] xl:h-[32px] inline-block duration-75 -mt-[3px]" :class="{'rotate-180': solutions }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.0" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" /> </svg> </span> <div x-show="solutions" @click.away="solutions = false" style="display:none;" class="shadow-lg z-[500] border-t border-b-4 bg-white absolute left-0 right-0 top-[66px]" > <div class="supermenu-bg section"> <div class="container flex flex-row border-[#3f6da4]"> <div class="w-1/4 pt-10 pb-10 my-auto px-default"> <img class="mx-auto" src="https://cdn.haproxy.com/img/containers/partner_integrations/haproxy-load-balancing.png/738326794ec27c9d12e658b99b75d49e/haproxy-load-balancing.webp" width="230" height="296" alt="haproxy-load-balancing" loading="lazy" > </div> <div class="flex flex-row flex-wrap content-start w-2/4 bg-white"> <div class="w-full px-default"> <h2 class="uppercase section-heading"> SOLUTIONS OVERVIEW </h2> </div> <div class="flex flex-row flex-wrap font-main supermenu-item"> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/load-balancing">Load Balancing</a> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/security">Security</a> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/udp-load-balancing">UDP Load Balancing</a> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/bot-management">Bot Management</a> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/high-availability">High Availability</a> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/web-application-firewall">Web Application Firewall</a> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/administration">Administration</a> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/api-gateway">API Gateway</a> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/haproxy-gui-graphical-user-interface">HAProxy GUI</a> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/kubernetes">Kubernetes</a> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/application-acceleration">Application Acceleration</a> <a class="block w-1/2 mb-6 font-bold px-default" href="/solutions/government-public-sector">Public Sector</a> </div> </div> <div class="w-1/4 px-default dark-menu"> <div> <h2 class="uppercase section-heading">FEATURED WEBINAR</h2> </div> <a href="/content-library/webinars/haproxy-3-1-feature-roundup"> <img class="mb-3 border shadow-sm" src="https://cdn.haproxy.com/img/containers/assets/on-demand-webinar-announcing-haproxy-3_1-%281%29.png/ba48eab913e464777a5a3346d6b0df2b/on-demand-webinar-announcing-haproxy-3_1-%281%29.webp" width="226" height="114" alt="haproxy-3-1-feature-roundup" loading="lazy" > </a> <div class="mb-6"> <a class="font-bold" href="/content-library/webinars">View All Webinars</a> </div> </div> </div> </div> <div class="menu-promo-bar py-3 bg-blue-300 text-white"> <div class="container px-default nop text-center font-main md:text-lg font-bold"> <p><a target="_blank" href="https://www.haproxyconf.com" title="HAProxyConf 2025 | San Francisco">HAProxyConf 2025 is coming to San Francisco | Learn more</a></p> </div> </div> </div> </li> <li class="main-nav__item"> <span class="main-nav__item--link whitespace-nowrap" :class="{ 'active': resources }" @click="resources = !resources" > Resources <svg class="w-[8px] h-[14px] xl:w-[14px] xl:h-[32px] inline-block duration-75 -mt-[3px]" :class="{'rotate-180': resources }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.0" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" /> </svg> </span> <div x-show="resources" @click.away="resources = false" style="display:none;" class="shadow-lg z-[500] border-t border-b-4 bg-white absolute left-0 right-0 top-[66px]" > <div class="supermenu-bg section"> <div class="container flex flex-row border-[#3f6da4]"> <div class="w-1/4 px-default"> <div class="font-main supermenu-item"> <h2 class="uppercase section-heading"> PRODUCT OVERVIEW </h2> <a class="mb-6 font-bold" href="/products/upgrade-haproxy-to-haproxy-enterprise">Compare Community With Enterprise</a> <a class="mb-6 font-bold" href="/migrate-from-f5">Migrate From F5</a> <a class="mb-6 font-bold" href="/migrate-from-avi-networks">Migrate From Avi Networks</a> <a class="mb-6 font-bold" href="/content-library/guides/quick-guide-how-to-migrate-from-netscaler-adc-to-haproxy">How to Migrate From NetScaler ADC</a> <a class="mb-6 font-bold" href="/certified-integrations">Certified Integrations</a> <a class="mb-6 font-bold" href="/content-library/datasheets">Datasheets</a> </div> </div> <div class="w-1/4 px-default"> <div class="pr-6 font-main supermenu-item"> <h2 class="uppercase section-heading"> LEARNING HUB </h2> <a class="mb-6 font-bold" href="/blog">Blog</a> <a class="mb-6 font-bold" href="/content-library/webinars">Webinars</a> <a class="mb-6 font-bold" href="/content-library/ebooks">eBooks</a> <a class="mb-6 font-bold" href="/content-library">Content Library</a> <a class="mb-6 font-bold" href="/knowledge-base">Knowledge Base</a> </div> </div> <div class="w-1/4 pb-10 bg-white px-default"> <div class="font-main supermenu-item"> <h2 class="uppercase section-heading"> Technical Resources </h2> <a class="mb-6 font-bold" href="/documentation/">Documentation</a> <a class="mb-6 font-bold" href="/glossary">Glossary</a> </div> </div> <div class="w-1/4 px-default"> <div class="font-main dark-menu"> <h2 class="uppercase section-heading"> Use Cases </h2> </div> <a href="/success-stories"> <img class="block mx-auto mb-4 border border-gray-100" src="https://cdn.haproxy.com/img/containers/assets/success_stories_ban-02.png/4b9d959ddfe47bd8fc73e72b4f46117d/success_stories_ban-02.webp" width="228" height="114" alt="success-stories" loading="lazy" > </a> <div> <a class="block mb-3 font-bold" href="/success-stories">Success Stories</a> <a class="block mb-3 font-bold" href="/user-spotlight-series">User Spotlight Series</a> </div> </div> </div> </div> <div class="menu-promo-bar py-3 bg-blue-300 text-white"> <div class="container px-default nop text-center font-main md:text-lg font-bold"> <p><a target="_blank" href="https://www.haproxyconf.com" title="HAProxyConf 2025 | San Francisco">HAProxyConf 2025 is coming to San Francisco | Learn more</a></p> </div> </div> </div> </li> <li class="main-nav__item"> <span class="main-nav__item--link whitespace-nowrap" :class="{ 'active': support }" @click="support = !support" > Support <svg class="w-[8px] h-[14px] xl:w-[14px] xl:h-[32px] inline-block duration-75 -mt-[3px]" :class="{'rotate-180': support }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.0" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" /> </svg> </span> <div x-show="support" @click.away="support = false" style="display:none;" class="shadow-lg z-[500] border-t border-b-4 bg-white absolute left-0 right-0 top-[66px]" > <div class="supermenu-bg section"> <div class="container flex flex-row border-[#3f6da4]"> <div class="px-default w-1/4 ml-[25%]"> <div class="font-main supermenu-item"> <h2 class="uppercase section-heading"> Expert Support </h2> <a class="mb-6 font-bold" href="/support/support-options">Support Details</a> <a class="mb-6 font-bold" href="/support/professional-services">Professional Services</a> <a class="mb-6 font-bold" href="https://my.haproxy.com/portal/cust/login?_gl=1*wunzd2*_ga*NzM1Njg1ODk5LjE3MDE5NjUyODk.*_ga_MGHPDQ7WFP*MTcwNTQwMTc0OS41NS4xLjE3MDU0MDM3OTYuMC4wLjA.">Customer Support Portal</a> </div> </div> <div class="w-1/4 px-default dark-menu"> <div class="font-main supermenu-item"> <h2 class="uppercase section-heading"> Community </h2> <a class="mb-6 font-bold" href="https://www.mail-archive.com/haproxy@formilux.org/">Community Mailing List</a> <a class="mb-6 font-bold" href="https://slack.haproxy.org/?_gl=1*1lrwvpm*_ga*NzM1Njg1ODk5LjE3MDE5NjUyODk.*_ga_MGHPDQ7WFP*MTcwNTQwMTc0OS41NS4xLjE3MDU0MDQyNjEuMC4wLjA.*_ga_VKZPMRNGK5*MTcwNTQwMTc0OS4yMTguMS4xNzA1NDA0Mjc0LjAuMC4w">Slack</a> <a class="mb-6 font-bold" href="https://www.reddit.com/r/haproxy/">Reddit</a> </div> </div> <div class="w-1/4 px-default dark-menu"> <div class="font-main"> <h2 class="uppercase section-heading"> FEATURED WEBINAR </h2> </div> <a href="/content-library/webinars/haproxy-data-plane-api-101-powering-interactions-across-haproxy"> <img class="mb-3 border shadow-sm" src="https://cdn.haproxy.com/img/containers/assets/on-demand-migrating-from-avi-broadcom-to-haproxy-sm-%281%29.png/7fc09865b442c494aa577555bef5c913/on-demand-migrating-from-avi-broadcom-to-haproxy-sm-%281%29.webp" alt="haproxy-data-plane-api-101-powering-interactions-across-haproxy" width="224" height="112" loading="lazy"> </a> <div class="mb-6"> <a class="font-bold" href="/content-library/webinars">View All Webinars</a> </div> </div> </div> </div> <div class="menu-promo-bar py-3 bg-blue-300 text-white"> <div class="container px-default nop text-center font-main md:text-lg font-bold"> <p><a target="_blank" href="https://www.haproxyconf.com" title="HAProxyConf 2025 | San Francisco">HAProxyConf 2025 is coming to San Francisco | Learn more</a></p> </div> </div> </div> </li> <li class="main-nav__item"> <span class="main-nav__item--link whitespace-nowrap" :class="{ 'active': company }" @click="company = !company" > Company <svg class="w-[8px] h-[14px] xl:w-[14px] xl:h-[32px] inline-block duration-75 -mt-[3px]" :class="{'rotate-180': company }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.0" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" /> </svg> </span> <div x-show="company" @click.away="company = false" style="display:none;" class="shadow-lg z-[500] border-t border-b-4 bg-white absolute left-0 right-0 top-[66px]" > <div class="supermenu-bg section"> <div class="container flex flex-row border-[#3f6da4]"> <div class="w-1/4 px-default"> <div class="font-main supermenu-item"> <h2 class="uppercase section-heading"> PARTNERS </h2> <a class="mb-6 font-bold" href="/partners/partner-program">Partner Program</a> <a class="mb-6 font-bold" href="/certified-integrations">Certified Integration Program</a> <a class="mb-6 font-bold" href="/contact-us">Find a Partner</a> </div> </div> <div class="w-1/4 bg-white px-default"> <div class="font-main supermenu-item"> <h2 class="uppercase section-heading"> Company </h2> <a class="mb-6 font-bold relative " href="/company/about-us">About Us</a> <a class="mb-6 font-bold relative " href="/company/news">News</a> <a class="mb-6 font-bold relative careers__now-hiring" href="/company/careers">Careers</a> <a class="mb-6 font-bold relative " href="/meet-loady">Meet Loady</a> </div> </div> <div class="w-1/4 px-default dark-menu"> <div class="font-main supermenu-item"> <h2 class="uppercase section-heading"> CONNECT WITH US </h2> <a class="mb-6 font-bold" href="/contact-us">Contact Us</a> <a class="mb-6 font-bold" href="https://slack.haproxy.org/?_gl=1*d5zhj1*_ga*NzM1Njg1ODk5LjE3MDE5NjUyODk.*_ga_VKZPMRNGK5*MTcwNTQwMTc0OS4yMTguMS4xNzA1NDA0ODc1LjAuMC4w*_ga_MGHPDQ7WFP*MTcwNTQwMTc0OS41NS4xLjE3MDU0MDQ4NzUuMC4wLjA.">Slack</a> <a class="mb-6 font-bold" href="https://twitter.com/haproxy/">Twitter</a> <a class="mb-6 font-bold" href="https://www.facebook.com/haproxy.technologies/">Facebook</a> <a class="mb-6 font-bold" href="https://www.linkedin.com/company/haproxy-technologies/">LinkedIn</a> <a class="mb-6 font-bold" href="https://www.reddit.com/r/haproxy/">Reddit</a> </div> </div> <div class="w-1/4 px-default dark-menu"> <div class="font-main"> <h2 class="uppercase section-heading"> EVENTS </h2> <a class="block mb-3 font-bold" href="/events/haproxyconf-2025-san-francisco">HAProxyConf 2025, San Francisco</a> <a href="/events/haproxyconf-2025-san-francisco"> <img class="mb-3 border shadow-sm" src="https://cdn.haproxy.com/img/containers/assets/haproxy-conf-2025-san-francisco.png/5f95bbaba7fefc33e4279170e199ffbf/haproxy-conf-2025-san-francisco.webp" width="226" height="114" alt="haproxyconf-2025-san-francisco" loading="lazy" > </a> </div> <div class="mb-6"> <a class="font-bold" href="/events">View All Events</a> </div> </div> </div> </div> <div class="menu-promo-bar py-3 bg-blue-300 text-white"> <div class="container px-default nop text-center font-main md:text-lg font-bold"> <p><a target="_blank" href="https://www.haproxyconf.com" title="HAProxyConf 2025 | San Francisco">HAProxyConf 2025 is coming to San Francisco | Learn more</a></p> </div> </div> </div> </li> <li class="main-nav__item"> <a class="main-nav__item--link" href="/contact-us"> Contact Us </a> </li> <li class="main-nav__item"> <span class="main-nav__item--link whitespace-nowrap" :class="{ 'active': gethaproxy }" @click="gethaproxy = !gethaproxy" > Get HAProxy <svg class="w-[8px] h-[14px] xl:w-[14px] xl:h-[32px] inline-block duration-75 -mt-[3px]" :class="{'rotate-180': gethaproxy }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.0" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" /> </svg> </span> <div x-show="gethaproxy" @click.away="gethaproxy = false" style="display:none;" class="shadow-lg z-[500] border-t border-b-4 bg-white absolute left-0 right-0 top-[66px]" > <div class="main-nav__item--gethaproxy grid grid-cols-2 shadow-lg border-r border-b border-t w-[750px] z-[500] bg-white absolute md:fixed md:top-[102px] md:right-[62px]" x-show="gethaproxy" @click.away="gethaproxy = false" style="display: none" > <a class="block mb-0 px-5 hover:bg-gray-50 border-l-[4px] border-gray-100 py-4 pr-8 hover:border-blue-600 border-b !border-b-gray-100" href="/hapee-trial" > <span class="block font-bold text-blue-600" > HAProxy Enterprise </span> <p class="block pt-1 mb-0 text-sm text-defaultcolor"> Enterprise-class features, services, and premium support. </p> </a> <a class="block mb-0 px-5 hover:bg-gray-50 border-l-[4px] border-gray-100 py-4 pr-8 hover:border-blue-600 border-b !border-b-gray-100" href="/fusion-demo" > <span class="block font-bold text-blue-600" > HAProxy Fusion </span> <p class="block pt-1 mb-0 text-sm text-defaultcolor"> Manage all of your HAProxy Enterprise instances from a single, graphical interface or directly through its API. </p> </a> <a class="block mb-0 px-5 hover:bg-gray-50 border-l-[4px] border-gray-100 py-4 pr-8 hover:border-blue-600 border-b !border-b-gray-100" href="/aloha-virtual-trial" > <span class="block font-bold text-blue-600" > HAProxy ALOHA <small>Virtual Load Balancer</small> </span> <p class="block pt-1 mb-0 text-sm text-defaultcolor"> Powerful plug-and-play appliance. Perfect for every environment. </p> </a> <a class="block mb-0 px-5 hover:bg-gray-50 border-l-[4px] border-gray-100 py-4 pr-8 hover:border-blue-600 border-b !border-b-gray-100" href="/edge-trial" > <span class="block font-bold text-blue-600" > HAProxy Edge </span> <p class="block pt-1 mb-0 text-sm text-defaultcolor"> A globally distributed application delivery network, or ADN, with turnkey services at massive scale. </p> </a> <a class="block mb-0 px-5 hover:bg-gray-50 border-l-[4px] border-gray-100 py-4 pr-8 hover:border-blue-600 border-b !border-b-gray-100" href="/aloha-hardware-quote" > <span class="block font-bold text-blue-600" > HAProxy ALOHA <small>Hardware Load Balancer</small> </span> <p class="block pt-1 mb-0 text-sm text-defaultcolor"> Flexible and simple to use. Deploy new applications in minutes. </p> </a> <a class="block mb-0 px-5 hover:bg-gray-50 border-l-[4px] border-gray-100 py-4 pr-8 hover:border-blue-600 border-b !border-b-gray-100" href="/kubernetes-trial" > <span class="block font-bold text-blue-600" > HAProxy Enterprise Kubernetes Ingress Controller </span> <p class="block pt-1 mb-0 text-sm text-defaultcolor"> Route traffic into a Kubernetes cluster leveraging powerful features of HAProxy Enterprise. </p> </a> <a class="block mb-0 px-5 hover:bg-gray-50 border-l-[4px] border-gray-100 py-4 pr-8 hover:border-blue-600 col-span-full text-sm" href="https://www.haproxy.org" > <span class="block font-bold leading-none text-gray-600 hover:text-gray-700" > HAProxy Community </span> <p class="block pt-1 mb-0 text-sm text-defaultcolor"> Open-source community version of HAProxy. </p> </a> </div> </div> </li> </ul> <div class="w-4 h-4 mx-4"> <a class="w-full h-full text-defaultcolor" href="/search"> <svg class="w-full h-full" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor"> <circle cx="9.813" cy="9.812" r="9.063" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" transform="rotate(-23.025 9.813 9.812)" /> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m16.221 16.22 7.029 7.03" /> </svg> </a> </div> </nav> </div> <div class="flex flex-row-reverse items-center lg:hidden grow"> <nav class="flex flex-row items-center h-full"> <ul class="flex flex-row list-none"> <li class="relative group"> <span class="pt-[18px] font-medium lg:text-sm xl:text-lg font-main px-4 py-auto block cursor-pointer min-h-[66px] !leading-[66px] border-l hover:bg-slate-200"> <a class="block w-[32px] h-[32px] p-1 text-primary-gray-dark" href="/search" > <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="m21 21-5.197-5.197m0 0A7.5 7.5 0 1 0 5.196 5.196a7.5 7.5 0 0 0 10.607 10.607Z" /> </svg> </a> </span> </li> <li class="relative group" @click="mobilenav = !mobilenav"> <span class="pt-[18px] font-medium lg:text-sm xl:text-lg font-main px-4 py-auto block cursor-pointer min-h-[66px] !leading-[66px] border-l hover:bg-slate-200" :class="{ '!bg-slate-100': mobilenav }"> <span class="block w-[32px] h-[32px]"> <svg width="24px" height="24px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="block ml-[3px] mt-[3px]" :class="{ 'hidden': mobilenav }"> <path d="M4 18L20 18" stroke="#000000" stroke-width="2" stroke-linecap="round" /> <path d="M4 12L20 12" stroke="#000000" stroke-width="2" stroke-linecap="round" /> <path d="M4 6L20 6" stroke="#000000" stroke-width="2" stroke-linecap="round" /> </svg> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24px" height="24px" class="hidden ml-[3px] mt-[3px]" :class="{ '!block': mobilenav }"> <path d="M 4.7070312 3.2929688 L 3.2929688 4.7070312 L 10.585938 12 L 3.2929688 19.292969 L 4.7070312 20.707031 L 12 13.414062 L 19.292969 20.707031 L 20.707031 19.292969 L 13.414062 12 L 20.707031 4.7070312 L 19.292969 3.2929688 L 12 10.585938 L 4.7070312 3.2929688 z" /> </svg> </span> </span> </li> <li> <div id="mobilenav" x-show="mobilenav" style="display:none;" @click.away="mobilenav = false" class=" overflow-y-auto shadow-lg border-l border-b z-[500] bg-white fixed top-[66px] md:top-[102px] left-[0px] bottom-[0px] right-[0px] border-t "> <div class="menu-promo-bar py-3 bg-blue-300 text-white"> <div class="container px-default nop text-center font-main md:text-lg font-bold"> <p><a target="_blank" href="https://www.haproxyconf.com" title="HAProxyConf 2025 | San Francisco">HAProxyConf 2025 is coming to San Francisco | Learn more</a></p> </div> </div> <ul class="pb-3 list-none"> <li class="hover:bg-slate-200"> <span class="p-4 items-center justify-between font-main uppercase !text-sm font-normal text-defaultcolor border-b flex" @click="products = !products, $nextTick(() => $refs.products.scrollIntoView())" x-ref="products" > Products <svg class="w-[20px] h-auto inline-block duration-75" :class="{'rotate-180': products }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5"></path> </svg> </span> </li> <li class="py-2" x-show="products" @click.away="products = false" > <div> <h2 class="my-4 text-sm px-default font-main">PRODUCTS OVERVIEW</h2> <div class="flex flex-wrap items-start"> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/products/haproxy-enterprise" > <span class="block pb-1">HAProxy Enterprise</span> <p class="text-sm font-normal text-gray-700 font-base">An enterprise-class software load balancer with cutting edge features, suite of add-ons, and support.</p> </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/products/haproxy-edge" > <span class="block pb-1">HAProxy Edge</span> <p class="text-sm font-normal text-gray-700 font-base">A globally distributed application delivery network, or ADN, with turnkey services at massive scale.</p> </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/products/haproxy-aloha" > <span class="block pb-1">HAProxy ALOHA</span> <p class="text-sm font-normal text-gray-700 font-base">A plug-and-play hardware or virtual load balancer based on HAProxy Enterprise.</p> </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/products/haproxy-fusion-control-plane" > <span class="block pb-1">HAProxy Fusion Control Plane</span> <p class="text-sm font-normal text-gray-700 font-base">Manage all of your HAProxy Enterprise instances from a single, graphical interface or directly through its API.</p> </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/products/haproxy-enterprise-kubernetes-ingress-controller" > <span class="block pb-1">HAProxy Enterprise Kubernetes Ingress Controller</span> <p class="text-sm font-normal text-gray-700 font-base">Route traffic into a Kubernetes cluster leveraging powerful features of HAProxy Enterprise.</p> </a> </div> </div> </div> </li> <li class="hover:bg-slate-200"> <span class="p-4 items-center justify-between font-main uppercase !text-sm font-normal text-defaultcolor border-b flex" @click="solutions = !solutions, $nextTick(() => $refs.solutions.scrollIntoView())" x-ref="solutions" > Solutions <svg class="w-[20px] h-auto inline-block duration-75" :class="{'rotate-180': solutions }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5"></path> </svg> </span> </li> <li class="py-2" x-show="solutions" @click.away="solutions = false" > <div> <h2 class="my-4 mb-4 text-sm px-default font-main">SOLUTIONS OVERVIEW</h2> <div class="flex flex-wrap items-start"> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/load-balancing" > Load Balancing </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/security" > Security </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/udp-load-balancing" > UDP Load Balancing </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/bot-management" > Bot Management </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/high-availability" > High Availability </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/web-application-firewall" > Web Application Firewall </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/administration" > Administration </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/api-gateway" > API Gateway </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/haproxy-gui-graphical-user-interface" > HAProxy GUI </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/kubernetes" > Kubernetes </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/application-acceleration" > Application Acceleration </a> </div> <div class="w-full sm:w-1/2 supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/solutions/government-public-sector" > Public Sector </a> </div> </div> </div> </li> <li class="hover:bg-slate-200"> <a class="p-4 items-center justify-between font-main uppercase !text-sm font-normal text-defaultcolor border-b flex" href="/blog" > Blog </a> </li> <li class="hover:bg-slate-200"> <span class="p-4 items-center justify-between font-main uppercase !text-sm font-normal text-defaultcolor border-b flex" @click="resources = !resources, $nextTick(() => $refs.resources.scrollIntoView())" x-ref="resources" > Resources <svg class="w-[20px] h-auto inline-block duration-75" :class="{'rotate-180': resources }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5"></path> </svg> </span> </li> <li class="py-2" x-show="resources" @click.away="resources = false" > <div class="flex flex-wrap"> <div class="w-full sm:w-1/2"> <h2 class="my-4 mb-4 text-sm px-default font-main">Technical Resources</h2> <div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/documentation/"> Documentation </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/glossary"> Glossary </a> </div> </div> </div> <div class="w-full sm:w-1/2"> <h2 class="my-4 mb-4 text-sm px-default font-main">PRODUCT OVERVIEW</h2> <div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/products/upgrade-haproxy-to-haproxy-enterprise"> Compare Community With Enterprise </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/migrate-from-f5"> Migrate From F5 </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/migrate-from-avi-networks"> Migrate From Avi Networks </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/content-library/guides/quick-guide-how-to-migrate-from-netscaler-adc-to-haproxy"> How to Migrate From NetScaler ADC </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/certified-integrations"> Certified Integrations </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/content-library/datasheets"> Datasheets </a> </div> </div> </div> <div class="w-full sm:w-1/2"> <h2 class="my-4 mb-4 text-sm px-default font-main">LEARNING HUB</h2> <div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/blog"> Blog </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/content-library/webinars"> Webinars </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/content-library/ebooks"> eBooks </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/content-library"> Content Library </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/knowledge-base"> Knowledge Base </a> </div> </div> </div> <div class="w-full sm:w-1/2"> <h2 class="my-4 mb-4 text-sm px-default font-main">Use Cases</h2> <a class="block px-default" href="/success-stories" > <img class="mb-2 border border-gray-100" src="https://cdn.haproxy.com/img/containers/assets/success_stories_ban-02.png/4b9d959ddfe47bd8fc73e72b4f46117d/success_stories_ban-02.webp" width="228" height="114" alt="success-stories" loading="lazy" > </a> <div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/success-stories"> Success Stories </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/user-spotlight-series"> User Spotlight Series </a> </div> </div> </div> </div> </li> <li class="hover:bg-slate-200"> <span class="p-4 items-center justify-between font-main uppercase !text-sm font-normal text-defaultcolor border-b flex" @click="support = !support, $nextTick(() => $refs.support.scrollIntoView())" x-ref="support" > Support <svg class="w-[20px] h-auto inline-block duration-75" :class="{'rotate-180': support }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5"></path> </svg> </span> </li> <li class="py-2" x-show="support" @click.away="support = false" > <div> <h2 class="my-4 mb-4 text-sm px-default font-main">Expert Support</h2> <div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/support/support-options" > Support Details </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/support/professional-services" > Professional Services </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="https://my.haproxy.com/portal/cust/login?_gl=1*wunzd2*_ga*NzM1Njg1ODk5LjE3MDE5NjUyODk.*_ga_MGHPDQ7WFP*MTcwNTQwMTc0OS41NS4xLjE3MDU0MDM3OTYuMC4wLjA." > Customer Support Portal </a> </div> </div> </div> </li> <li class="hover:bg-slate-200"> <span class="p-4 items-center justify-between font-main uppercase !text-sm font-normal text-defaultcolor border-b flex" @click="company = !company, $nextTick(() => $refs.company.scrollIntoView())" x-ref="company" > Company <svg class="w-[20px] h-auto inline-block duration-75" :class="{'rotate-180': company }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5"></path> </svg> </span> </li> <li class="py-2" x-show="company" @click.away="company = false" > <div class="flex flex-wrap"> <div class="w-full sm:w-1/2"> <h2 class="my-4 mb-4 text-sm px-default font-main">PARTNERS</h2> <div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/partners/partner-program"> Partner Program </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/certified-integrations"> Certified Integration Program </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/contact-us"> Find a Partner </a> </div> </div> </div> <div class="w-full sm:w-1/2"> <h2 class="my-4 mb-4 text-sm px-default font-main">Company</h2> <div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/company/about-us"> About Us </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/company/news"> News </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/company/careers"> Careers </a> </div> <div class="supermenu-item px-default"> <a class="relative font-bold hover:!text-blue-700 block" href="/meet-loady"> Meet Loady </a> </div> </div> </div> </div> </li> <li class="hover:bg-slate-200"> <a class="p-4 items-center justify-between font-main uppercase !text-sm font-normal text-defaultcolor border-b flex" href="/contact-us" > Contact Us </a> </li> <li class="hover:bg-slate-200"> <span class="p-4 items-center justify-between font-main uppercase !text-sm font-normal text-defaultcolor border-b flex" @click="gethaproxy = !gethaproxy, $nextTick(() => $refs.gethaproxy.scrollIntoView())" x-ref="gethaproxy" > Get HAProxy <svg class="w-[20px] h-auto inline-block duration-75" :class="{'rotate-180': gethaproxy }" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" > <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5"></path> </svg> </span> </li> <li class="py-2" x-show="gethaproxy" @click.away="gethaproxy = false" > <div class="pt-4"> <div class="flex flex-wrap items-start"> <div class="supermenu-item px-default w-full sm:w-1/2"> <a class="relative font-bold hover:!text-blue-700 block" href="/hapee-trial" > <span class="block pb-1 ">HAProxy Enterprise</span> <p class="font-normal text-gray-700 font-base text-sm">Enterprise-class features, services, and premium support.</p> </a> </div> <div class="supermenu-item px-default w-full sm:w-1/2"> <a class="relative font-bold hover:!text-blue-700 block" href="/fusion-demo" > <span class="block pb-1 ">HAProxy Fusion</span> <p class="font-normal text-gray-700 font-base text-sm">Manage all of your HAProxy Enterprise instances from a single, graphical interface or directly through its API.</p> </a> </div> <div class="supermenu-item px-default w-full sm:w-1/2"> <a class="relative font-bold hover:!text-blue-700 block" href="/aloha-virtual-trial" > <span class="block pb-1 ">HAProxy ALOHA <small>Virtual Load Balancer</small></span> <p class="font-normal text-gray-700 font-base text-sm">Powerful plug-and-play appliance. Perfect for every environment.</p> </a> </div> <div class="supermenu-item px-default w-full sm:w-1/2"> <a class="relative font-bold hover:!text-blue-700 block" href="/edge-trial" > <span class="block pb-1 ">HAProxy Edge</span> <p class="font-normal text-gray-700 font-base text-sm">A globally distributed application delivery network, or ADN, with turnkey services at massive scale.</p> </a> </div> <div class="supermenu-item px-default w-full sm:w-1/2"> <a class="relative font-bold hover:!text-blue-700 block" href="/aloha-hardware-quote" > <span class="block pb-1 ">HAProxy ALOHA <small>Hardware Load Balancer</small></span> <p class="font-normal text-gray-700 font-base text-sm">Flexible and simple to use. Deploy new applications in minutes.</p> </a> </div> <div class="supermenu-item px-default w-full sm:w-1/2"> <a class="relative font-bold hover:!text-blue-700 block" href="/kubernetes-trial" > <span class="block pb-1 ">HAProxy Enterprise Kubernetes Ingress Controller</span> <p class="font-normal text-gray-700 font-base text-sm">Route traffic into a Kubernetes cluster leveraging powerful features of HAProxy Enterprise.</p> </a> </div> <div class="supermenu-item px-default w-full sm:w-1/2"> <a class="relative font-bold hover:!text-blue-700 block" href="https://www.haproxy.org" > <span class="block pb-1 leading-none text-gray-600 hover:text-gray-700 text-sm">HAProxy Community</span> <p class="font-normal text-gray-700 font-base text-xs">Open-source community version of HAProxy.</p> </a> </div> </div> </div> </li> <li class="hover:bg-slate-200" :class="{ 'bg-slate-200': langDropdown, }"> <a class="p-4 block font-main itemtitle !text-[14px] font-normal text-defaultcolor border-b " href="#" @click.prevent="langDropdown = !langDropdown" > English <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.0" stroke="currentColor" class="w-[8px] h-[14px] xl:w-[14px] xl:h-[32px] inline-block -mt-[3px]"> <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" /> </svg> </a> </li> <li x-show="langDropdown" style="display:none;"> <div class="group"> <ul class="list-none"> <li class="hover:bg-slate-200"> <a class="p-4 block font-main itemtitle !text-[14px] font-normal text-defaultcolor" href="/fr/products/haproxy-enterprise"> French </a> </li> <li class="hover:bg-slate-200"> <a class="p-4 block font-main itemtitle !text-[14px] font-normal text-defaultcolor" href="/de/products/haproxy-enterprise"> German </a> </li> </ul> </div> </li> </ul> </div> </li> </ul> </nav> </div> </div> </header> <div id="maincontent" class="pt-[67px] md:pt-[100px] relative" x-data="{ }"> <div class="py-default section"> <div class="flex flex-col-reverse md:flex-row flex-wrap container my-default items-center"> <div class="px-default w-full md:w-1/2" > <div > <h1 class="!mt-0" > HAProxy Enterprise </h1> <h2 class="!mt-0 text-xl text-leading" > The World’s Fastest and Most Widely Used Software Load Balancer </h2> <p>HAProxy Enterprise is the industry’s leading software load balancer. It powers modern application delivery at any scale and in any environment, providing the utmost performance, observability and security.</p> <a class="btn-primary rounded text-white " href="/hapee-trial" > Try HAProxy Enterprise </a> <p>Already an HAProxy user?<br><a href="/products/upgrade-haproxy-to-haproxy-enterprise">Learn more about upgrading to Enterprise.</a></p> </div> </div> <div class="px-default w-full md:w-1/2 mb-6 md:mb-0" > <img src="https://cdn.haproxy.com/img/containers/partner_integrations/haproxy-entrprise-1660236931.png/fbddfc66ac789beb285f5469bf1a2569/haproxy-entrprise-1660236931.webp" alt="graphic image of buildings and technical symbols in the background" class="mx-auto max-w-[100%] my-4 md:my-0" loading="lazy" > </div> </div> <div class="flex flex-row flex-wrap container my-default"> <div class="px-default w-full" > <div > <h2 class="text-center text-3xl" > HAProxy Enterprise Success Stories </h2> </div> <div class="container pt-0 pb-default my-default text-[12px] md:text-base"> <div class=" flex flex-wrap flex-col " x-data="{ tab : 'homepage_success_stories_load_balancing' }"> <ul class="tab-controls list-none w-full flex flex-row flex-wrap justify-center !p-0"> <li class="tab-control block !m-0 !pl-5 !pr-5 cursor-pointer text-center !pb-5" :class="tab == 'homepage_success_stories_load_balancing' ? 'triangle-bottom after:border-b-[#00b2ff]' : ''" @click="tab = 'homepage_success_stories_load_balancing'"> <img src="https://cdn.haproxy.com/assets/features_icons/icon-haproxy-load-balancing-1.png" class="max-w-[50px] md:max-w-[90px] lg:max-w-[120px] mx-auto" alt="load balancing icon" loading="lazy"> Load Balancing </li> <li class="tab-control block !m-0 !pl-5 !pr-5 cursor-pointer text-center !pb-5" :class="tab == 'homepage_success_stories_kubernetes' ? 'triangle-bottom after:border-b-[#00b2ff]' : ''" @click="tab = 'homepage_success_stories_kubernetes'"> <img src="https://cdn.haproxy.com/assets/icon-haproxy-kubernetes-1.png" class="max-w-[50px] md:max-w-[90px] lg:max-w-[120px] mx-auto" alt="kubernetes icon" loading="lazy"> Kubernetes </li> <li class="tab-control block !m-0 !pl-5 !pr-5 cursor-pointer text-center !pb-5" :class="tab == 'homepage_success_stories_security' ? 'triangle-bottom after:border-b-[#00b2ff]' : ''" @click="tab = 'homepage_success_stories_security'"> <img src="https://cdn.haproxy.com/assets/features_icons/icon-haproxy-security-1.png" class="max-w-[50px] md:max-w-[90px] lg:max-w-[120px] mx-auto" alt="security icon" loading="lazy"> Security </li> <li class="tab-control block !m-0 !pl-5 !pr-5 cursor-pointer text-center !pb-5" :class="tab == 'homepage_success_stories_service_mesh' ? 'triangle-bottom after:border-b-[#00b2ff]' : ''" @click="tab = 'homepage_success_stories_service_mesh'"> <img src="https://cdn.haproxy.com/assets/icon-haproxy-service-mesh-1.png" class="max-w-[50px] md:max-w-[90px] lg:max-w-[120px] mx-auto" alt="service mesh icon" loading="lazy"> Service Mesh </li> <li class="tab-control block !m-0 !pl-5 !pr-5 cursor-pointer text-center !pb-5" :class="tab == 'homepage_success_stories_observability' ? 'triangle-bottom after:border-b-[#00b2ff]' : ''" @click="tab = 'homepage_success_stories_observability'"> <img src="https://cdn.haproxy.com/assets/icon-haproxy-observability.png" class="max-w-[50px] md:max-w-[90px] lg:max-w-[120px] mx-auto" alt="observability icon" loading="lazy"> Observability </li> </ul> <div class="tab-contents shadow-lg border-t-[6px] border-[#00b2ff] p-5 md:p-10" x-show="tab == 'homepage_success_stories_load_balancing'" style="display:none;"> <div > <div class="flex flex-row flex-wrap w-full items-center"> <div class="md:px-default w-full md:w-1/2" > <a href="/success-stories/doubleverify-transitions-from-f5-to-haproxy-enterprise" > <img src="https://cdn.haproxy.com/img/containers/partner_integrations/success-stories-tabs/dvthumbf-small-1.png/2f1e86bd6c294c5384d74f6f88858f64/dvthumbf-small-1.webp" width="460" height="230" alt="dvthumbf-small-1" class="mx-auto" loading="lazy" > </a> </div> <div class="md:px-default w-full md:w-1/2 pt-6 md:pt-0" > <div > <h3 class="text-xl lg:text-3xl !m-0 font-semibold" > <a href="/success-stories/doubleverify-transitions-from-f5-to-haproxy-enterprise" > The Path from Legacy to the Future - How DoubleVerify Transitioned from F5 to HAProxy Enterprise </a> </h3> </div> </div> </div> </div> </div> <div class="tab-contents shadow-lg border-t-[6px] border-[#00b2ff] p-5 md:p-10" x-show="tab == 'homepage_success_stories_kubernetes'" style="display:none;"> <div > <div class="flex flex-row flex-wrap w-full items-center"> <div class="px-default w-full md:w-1/2" > <a href="/success-stories/modernizing-government-infrastructure-with-haproxy-enterprise-and-kubernetes" > <img src="https://cdn.haproxy.com/img/containers/partner_integrations/success-stories-tabs/bah-success-story-thumbnail-2x1-upd.png/52d2fcd37eb0bdf2c1e72e9b5527f07e/bah-success-story-thumbnail-2x1-upd.webp" alt="bah-success-story-thumbnail-2x1-upd" class="mx-auto" loading="lazy" > </a> </div> <div class="px-default w-full md:w-1/2 pt-6 md:pt-0" > <div > <h3 class="text-xl lg:text-3xl !m-0 font-semibold" > <a href="/success-stories/modernizing-government-infrastructure-with-haproxy-enterprise-and-kubernetes" > Modernizing Government Infrastructure with HAProxy Enterprise and Kubernetes </a> </h3> </div> </div> </div> </div> </div> <div class="tab-contents shadow-lg border-t-[6px] border-[#00b2ff] p-5 md:p-10" x-show="tab == 'homepage_success_stories_security'" style="display:none;"> <div > <div class="flex flex-row flex-wrap w-full items-center"> <div class="px-default w-full md:w-1/2" > <a href="/success-stories/empowering-true-nl-advanced-security-platform-with-haproxy-enterprise" > <img src="https://cdn.haproxy.com/img/containers/partner_integrations/success-stories-tabs/truethumbf-small-1.png/aacd7fcf49fb4f9ffd9cd75ffa624918/truethumbf-small-1.webp" alt="truethumbf-small-1" class="mx-auto" loading="lazy" > </a> </div> <div class="px-default w-full md:w-1/2 pt-6 md:pt-0" > <div > <h3 class="text-xl lg:text-3xl !m-0 font-semibold" > <a href="/success-stories/empowering-true-nl-advanced-security-platform-with-haproxy-enterprise" > Empowering True.nl’s Advanced Security Platform with HAProxy Enterprise </a> </h3> </div> </div> </div> </div> </div> <div class="tab-contents shadow-lg border-t-[6px] border-[#00b2ff] p-5 md:p-10" x-show="tab == 'homepage_success_stories_service_mesh'" style="display:none;"> <div > <div class="flex flex-row flex-wrap w-full items-center"> <div class="px-default w-full md:w-1/2" > <a href="/success-stories/criteo-service-mesh-infrastructure-with-haproxy-enterprise" > <img src="https://cdn.haproxy.com/img/containers/partner_integrations/success-stories-tabs/criteothumbf.jpg/ad316588d5bc2412c6c39219a1226df0/criteothumbf.webp" alt="criteothumbf" class="mx-auto" loading="lazy" > </a> </div> <div class="px-default w-full md:w-1/2 pt-6 md:pt-0" > <div > <h3 class="text-xl lg:text-3xl !m-0 font-semibold" > <a href="/success-stories/criteo-service-mesh-infrastructure-with-haproxy-enterprise" > Criteo’s Service Mesh with Consul and HAProxy Enterprise </a> </h3> </div> </div> </div> </div> </div> <div class="tab-contents shadow-lg border-t-[6px] border-[#00b2ff] p-5 md:p-10" x-show="tab == 'homepage_success_stories_observability'" style="display:none;"> <div > <div class="flex flex-row flex-wrap w-full items-center"> <div class="px-default w-full md:w-1/2" > <a href="/success-stories/placewise-digital-perfect-uptime-with-haproxy-enterprise" > <img src="https://cdn.haproxy.com/img/containers/partner_integrations/success-stories-tabs/placethumbf-small-1.png/cedc636e096b232627da08deeb22c1b6/placethumbf-small-1.webp" alt="placethumbf-small-1" class="mx-auto" loading="lazy" > </a> </div> <div class="px-default w-full md:w-1/2 pt-6 md:pt-0" > <div > <h3 class="text-xl lg:text-3xl !m-0 font-semibold" > <a href="/success-stories/placewise-digital-perfect-uptime-with-haproxy-enterprise" > PlaceWise Digital Gained Perfect Uptime with HAProxy Enterprise </a> </h3> </div> </div> </div> </div> </div> </div> </div> </div> </div> <div class="flex flex-row flex-wrap container my-default"> <div class="px-default w-full" > <div class="text-center"> <h2 class="text-3xl" > Key Capabilities </h2> </div> </div> <div class="px-default py-5 w-full lg:w-1/2 flex flex-wrap gap-y-5" > <img src="https://cdn.haproxy.com/img/containers/partner_integrations/icon-haproxy-load-balancing-1.png/f1587d220685eaea5de72122a457458e/icon-haproxy-load-balancing-1.webp" alt="load balancing icon" class="mt-4 my-auto mx-auto md:mx-0 w-[150px] md:w-[30%] pl-default" loading="lazy" > <div class="md:w-[60%] px-default"> <h2 class="text-xl !mt-0" > Load Balancing & High Availability </h2> <ul><li><p>Active/Active (BGP/OSPF/RIP)</p></li><li><p>Active/Passive (VRRP)</p></li><li><p>Layers 4 – 7</p></li><li><p>Protocols: HTTP, HTTP/2, HTTP/3, gRPC, FastCGI, Syslog, Financial Information eXchange (FIX), MQTT</p></li><li><p>UDP load balancing</p></li><li><p>Layer 4 & 7 Retries</p></li><li><p>Complex Routing Decisions</p></li><li><p>Multiple Deployment Patterns</p></li><li><p>HTTP/3 over QUIC</p></li><li><p>Global Server Load Balancing (GSLB)</p></li></ul> </div> <img src="https://cdn.haproxy.com/img/containers/partner_integrations/haproxy-administration.png/ef85900c3e28d2dbccfe7a27cf06de8b/haproxy-administration.webp" alt="administration icon" class="mt-4 my-auto mx-auto md:mx-0 w-[150px] md:w-[30%] pl-default" loading="lazy" > <div class="md:w-[60%] px-default"> <h2 class="text-xl !mt-0" > Administration </h2> <ul><li><p>Flexible Service Discovery</p></li><li><p>Runtime API (In-Memory API)</p></li><li><p>Data Plane API (RESTful API)</p></li><li><p>Hitless Reloads</p></li><li><p>Email Alerts as a Lua Module</p></li><li><p>SSO Module</p></li></ul> </div> </div> <div class="px-default py-5 w-full lg:w-1/2 flex flex-wrap flex-row gap-y-5" > <img src="https://cdn.haproxy.com/img/containers/partner_integrations/icon-haproxy-application-acceleration.png/ae4870780aefe8455e96acb711149719/icon-haproxy-application-acceleration.webp" alt="application acceleration icon" class="mt-4 my-auto mx-auto md:mx-0 w-[150px] md:w-[30%] pl-default" loading="lazy" > <div class="md:w-[70%] px-default"> <h2 class="text-xl !mt-0" > Application Acceleration </h2> <ul><li><p>SSL/TLS Offloading</p></li><li><p>HTTP Compression</p></li><li><p>Connection Pooling</p></li><li><p>Small Object Cache</p></li></ul> </div> <img src="https://cdn.haproxy.com/img/containers/partner_integrations/haproxy-security.png/bf80971d21155d56f3411030edd9f4c2/haproxy-security.webp" alt="security icon" class="mt-4 my-auto mx-auto md:mx-0 w-[150px] md:w-[30%] pl-default" loading="lazy" > <div class="md:w-[70%] px-default"> <h2 class="text-xl !mt-0" > Security </h2> <ul><li><p>Web Application Firewall (WAF)</p></li><li><p>HAProxy Enterprise Bot Management Module</p></li><li><p>Least Privileged Architecture</p></li><li><p>Multi-Layered Security</p></li><li><p>Advanced SSL/TLS</p></li><li><p>Client Certificate Authentication</p></li><li><p>Let's Encrypt acme.sh Client</p></li><li><p>Captcha Module</p></li><li><p>SAML Module</p></li></ul> </div> <img src="https://cdn.haproxy.com/img/containers/partner_integrations/haproxy-observability.png/8954aaea911c4f532c8a9c01a5926a48/haproxy-observability.webp" alt="observability icon" class="mt-4 my-auto mx-auto md:mx-0 w-[150px] md:w-[30%] pl-default" loading="lazy" > <div class="md:w-[70%] px-default"> <h2 class="text-xl !mt-0" > Observability </h2> <ul><li><p>Native Prometheus Integration</p></li><li><p>SNMP</p></li><li><p>Advanced Logging</p></li><li><p>End-to-End Request Timing</p></li><li><p>OpenTracing</p></li></ul> </div> </div> </div> </div> <div id="fusionarrow" > <div class="flex flex-row flex-wrap container my-default"> <div class="px-default w-full" > <div class="md:text-center text-xl max-w-2xl font-main mx-auto font-semibold"> <p>Manage all your HAProxy Enterprise instances from a single UI/API with <a href="/products/haproxy-fusion-control-plane">HAProxy Fusion Control Plane</a>.</p> </div> <div class="md:text-center text-xl max-w-2xl font-main mx-auto font-semibold"> <p>With HAProxy Fusion, you get:</p> </div> </div> </div> <div class="flex flex-row flex-wrap container my-default relative"> <div class="px-default w-full hidden md:block" > <div class="hidden md:block w-[100px] h-[36px] relative bg-[#00B2FF] mx-auto after:content-[' '] after:absolute after:top-0 after:left-0 after:bottom-0 after:right-0 after:w-0 after:h-0 after:border-t-white after:border-t-[23px] after:border-l-[50px] after:border-l-transparent after:border-r-[50px] after:border-r-transparent"> </div> </div> <div class="px-default w-full flex flex-row md:flex-row-reverse flex-wrap py-5 md:before:content-[' '] md:before:w-[100px] md:before:h-[100%] md:before:block md:before:bg-[#00B2FF] md:before:absolute md:before:left-[50%] md:before:ml-[-50px] md:before:top-0 md:before:bottom-0 md:before:z-[-100]" > <div class="w-full md:w-1/2 flex flex-row flex-wrap md:pl-[60px] md:px-default"> <img src="https://cdn.haproxy.com/assets/haproxy-enterprise-fusion-icon1-1.svg" alt="haproxy-enterprise-fusion-icon1-1" class="w-[15%] hidden md:flex" loading="lazy" > <h3 class="text-xl" > Centralized management of your load balancer infrastructure </h3> <p>From small, single cluster labs to large, production environments, HAProxy Fusion supports HAProxy Enterprise deployments of any size. Administrators can manage multiple clusters of load balancers, regardless of whether they’re deployed on-premises or in the cloud.</p> </div> <img src="https://cdn.haproxy.com/assets/haproxy_fusion_control_plane_-_security_dashboard_new-(1).svg" alt="haproxy_fusion_control_plane_-_security_dashboard_new-(1)" class="my-auto w-full md:w-1/2 md:flex px-0 rounded-lg shadow-featured" loading="lazy" > </div> <div class="px-default w-full flex flex-row flex-wrap py-5" > <div class="w-full md:w-1/2 flex flex-row flex-wrap md:px-default text-left md:text-right md:pr-[60px]"> <img src="https://cdn.haproxy.com/assets/haproxy-enterprise-fusion-icon2-1.svg" alt="haproxy-enterprise-fusion-icon2-1" class="w-[15%] hidden md:block mr-0 ml-auto" loading="lazy" > <h3 class="text-xl block w-full" > Self-service application delivery </h3> <p>AppDev teams need the autonomy to configure load balancing, security, and observability for their applications without opening a ticket. HAProxy Fusion hides the complexity of the underlying infrastructure from developers who benefit from a simpler set of options, but still provides advanced features for admins.</p> </div> <img src="https://cdn.haproxy.com/assets/haproxy_fusion_control_plane_-_app_delivery.svg" alt="haproxy_fusion_control_plane_-_app_delivery" class="my-auto w-full md:w-1/2 md:flex px-0 rounded-lg shadow-featured" loading="lazy" > </div> <div class="px-default w-full flex flex-row md:flex-row-reverse flex-wrap py-5" > <div class="w-full md:w-1/2 flex flex-row flex-wrap md:pl-[60px] md:px-default"> <img src="https://cdn.haproxy.com/assets/haproxy-enterprise-fusion-icon3-1.svg" alt="haproxy-enterprise-fusion-icon3-1" class="w-[15%] hidden md:flex" loading="lazy" > <h3 class="text-xl w-full" > A first-class API </h3> <p>Teams often need to integrate HAProxy Enterprise with continuous-delivery pipelines and automated workflows. The Fusion API, which is built on top of the OpenAPI Specification, enables developers to integrate custom applications with the load balancing tier, unlocking the ability to automate common tasks.</p> </div> <img src="https://cdn.haproxy.com/assets/haproxy_fusion_control_plane_-_self_service.svg" alt="haproxy_fusion_control_plane_-_self_service" class="my-auto w-full md:w-1/2 md:flex px-0 rounded-lg shadow-featured" loading="lazy" > </div> <div class="px-default w-full flex flex-row flex-wrap py-5" > <div class="w-full md:w-1/2 flex flex-row flex-wrap px-5 text-left md:text-right md:pr-[60px]"> <img src="https://cdn.haproxy.com/assets/haproxy-enterprise-fusion-icon4-1.svg" alt="haproxy-enterprise-fusion-icon4-1" class="w-[15%] hidden md:block mr-0 ml-auto" loading="lazy" > <h3 class="text-xl block w-full" > Features for DevSecOps teams </h3> <p>Every team benefits from HAProxy Fusion. Ops teams can determine access levels and configure presets. Next, Dev teams can leverage self-service application delivery. Finally, Sec teams get centralized management and observability of HAProxy Enterprise's security layers, such as HAProxy Enterprise WAF and HAProxy Enterprise Bot Management Module, for greater policy consistency.</p> </div> <img src="https://cdn.haproxy.com/assets/haproxy_fusion_control_plane_-_map_view.svg" alt="haproxy_fusion_control_plane_-_map_view" class="my-auto w-full md:w-1/2 md:flex px-0 rounded-lg shadow-featured" loading="lazy" > </div> <div class="px-default w-full flex flex-row md:flex-row-reverse flex-wrap py-5" > <div class="w-full md:w-1/2 flex flex-row flex-wrap md:pl-[60px] md:px-default"> <img src="https://cdn.haproxy.com/assets/haproxy-enterprise-fusion-icon2.svg.svg" alt="haproxy-enterprise-fusion-icon2.svg" class="w-[15%] hidden md:flex" loading="lazy" > <h3 class="text-xl w-full" > Kubernetes service discovery </h3> <p>HAProxy Fusion’s automated service discovery for Kubernetes and Consul environments efficiently identifies backend services. Leverage support for intelligent external load balancing, multi-cluster routing, and blue-green deployments.</p> </div> <img src="https://cdn.haproxy.com/assets/haproxy-fusion-control-plane---service-discovery.svg" alt="haproxy-fusion-control-plane---service-discovery" class="my-auto w-full md:w-1/2 md:flex px-0 rounded-lg shadow-featured" loading="lazy" > </div> <div class="px-default w-full p-3 h-0 m-3 hidden md:block" > <div class="hidden md:block w-[100px] h-[56px] relative bg-[#00B2FF] mx-auto before:content[' '] before:left-0 before:absolute before:bottom-0 before:w-0 before:h-0 before:border-t-[23px] before:border-t-transparent before:border-l-[50px] before:border-l-white before:border-r-[50px] before:border-r-white"> </div> </div> </div> <div class="flex flex-row flex-wrap container my-default"> <div class="px-default w-full" > <div class="text-center text-xl mt-default font-main font-semibold pb-default"> <p>Learn more about <a href="/products/haproxy-fusion-control-plane">HAProxy Fusion Control Plane</a></p> </div> </div> </div> </div> <div class="py-default section"> <div class="flex flex-row flex-wrap my-default bg-[#f8faff] text-center py-5 mb-0"> <div class="px-default w-full" > <div > <h2 class="text-center text-2xl md:text-3xl" > HAProxy Enterprise Features </h2> </div> </div> <div class="px-default container mx-auto flex flex-row flex-wrap" > <img src="https://cdn.haproxy.com/img/containers/partner_integrations/haproxy-enterprise.png/638a2a6a1062035088fa4f9519b2ff4c/haproxy-enterprise.webp" alt="haproxy enterprise" class="my-auto w-full max-w-[300px] md:max-w-[100%] mx-auto md:w-1/2 md:px-16" loading="lazy" > <div class="w-full md:w-1/2 text-start md:px-default"> <h3 class="text-lg text-highlight" > HAProxy </h3> <p>Rigorously Tested Core | Certified Packages</p> <h3 class="text-lg text-highlight" > High-Performance Modules </h3> <p>Web Application Firewall | <a href="/solutions/bot-management">Bot Management</a> | Device Detection | Geolocation | Global Profiling Engine | DNS Load Shedding | Streaming Metrics | HTTP API | Traffic Mirroring | UDP | Captcha | SAML (Single Sign-On)</p> <h3 class="text-lg text-highlight" > Expert Support </h3> <p>24x7x365 Support</p> <h3 class="text-lg text-highlight" > Specialized Scripts and Tools </h3> <p>Active-Passive Clustering (Optimized VRRP) | SNMP Metrics | Route Health Injection (RHI) | Ansible Playbook</p> <a class="btn-primary rounded text-white " href="/assets/content-library/datasheets/haproxy-enterprise.pdf" target="_blank" > Download the Datasheet </a> </div> <div class="text-center w-full"> <h2 class="text-xl" > Supported Environments </h2> </div> </div> </div> <div class="flex flex-row flex-wrap my-default bg-[#f8faff] py-5 mt-0 mb-5"> <div id="" class="grid md:grid-cols-11 grid-cols-3 gap-4 container w-full"> <div class="min-w-full mx-auto text-center"> <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-docker-1.png/406216704320b9ece65d9dc699ceb98d/haproxy-docker-1.webp" alt="docker logo" loading="lazy" class="mx-auto" > </div> <div class="min-w-full mx-auto text-center"> <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-microsoft-azure-1.png/9a78c6c16fccdff13094f5be05f91198/haproxy-microsoft-azure-1.webp" alt="microsoft azure logo" loading="lazy" class="mx-auto" > </div> <div class="min-w-full mx-auto text-center"> <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-aws-1.png/ad360bc8662c8c57b26e94f2a0d1c47a/haproxy-aws-1.webp" alt="aws logo" loading="lazy" class="mx-auto" > </div> <div class="min-w-full mx-auto text-center"> <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-freebsd-1.png/4a7876634be33fa3bbe46db8823749e8/haproxy-freebsd-1.webp" alt="freebsd logo" loading="lazy" class="mx-auto" > </div> <div class="min-w-full mx-auto text-center"> <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-photon-1.png/f52d215bd39bda308d1ca6f211d6537b/haproxy-photon-1.webp" alt="photon logo" loading="lazy" class="mx-auto" > </div> <div class="min-w-full mx-auto text-center"> <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-oracle-linux-1.png/ab86ffff62f33142e840206e83534442/haproxy-oracle-linux-1.webp" alt="oracle logo" loading="lazy" class="mx-auto" > </div> <div class="min-w-full mx-auto text-center"> <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-debian-1.png/9034655fdc25a3c49f45e9c6711f611b/haproxy-debian-1.webp" alt="debian logo" loading="lazy" class="mx-auto" > </div> <div class="min-w-full mx-auto text-center"> <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-centos-1.png/9ea28c0ed9c08cbc7a526bdbf5544742/haproxy-centos-1.webp" alt="centos logo" loading="lazy" class="mx-auto" > </div> <div class="min-w-full mx-auto text-center"> <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-redhat-1.png/69ffdf4f8c0cc9eff6dccf633ec426b7/haproxy-redhat-1.webp" alt="redhat logo" loading="lazy" class="mx-auto" > </div> <div class="min-w-full mx-auto text-center"> <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-suse-1.png/8373214dbf3acb9694a3efcd5428a7a7/haproxy-suse-1.webp" alt="suse logo" loading="lazy" class="mx-auto" > </div> <div class="min-w-full mx-auto text-center"> <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-ubuntu-1.png/3a3ce8463e12535d76e07fe2d76851a7/haproxy-ubuntu-1.webp" alt="ubuntu logo" loading="lazy" class="mx-auto" > </div> </div> </div> <div class="flex flex-row flex-wrap container my-default"> <div class="px-0 w-full py-5 my-5" > <div > <h2 class="text-3xl text-center p-4" > Main Features of HAProxy Enterprise </h2> </div> <div class="pl-0 w-full my-10"> <div class=" flex flex-wrap flex-row items-start " x-data="{ tab : 'load_balancer_hapee_features' }"> <ul class="tab-controls list-none w-full md:w-1/4 flex flex-row flex-wrap my-6"> <li class="tab-control hidden sm:flex w-1/2 md:w-full p-2 cursor-pointer items-center" :class="tab == 'load_balancer_hapee_features' ? 'font-bold' : ''" @click="tab = 'load_balancer_hapee_features'"> <img src="https://cdn.haproxy.com/assets/solutions-icons/haproxy-features-load-balancing.png" class="max-w-[32px] mr-3" alt="diagram icon" loading="lazy"> Load Balancer </li> <li class="tab-control hidden sm:flex w-1/2 md:w-full p-2 cursor-pointer items-center" :class="tab == 'security_layer_hapee_features' ? 'font-bold' : ''" @click="tab = 'security_layer_hapee_features'"> <img src="https://cdn.haproxy.com/assets/haproxy-features-security.png" class="max-w-[32px] mr-3" alt="" loading="lazy"> Security Layer </li> <li class="tab-control hidden sm:flex w-1/2 md:w-full p-2 cursor-pointer items-center" :class="tab == 'application_acceleration_hapee_features' ? 'font-bold' : ''" @click="tab = 'application_acceleration_hapee_features'"> <img src="https://cdn.haproxy.com/assets/haproxy-features-application-acceleration.png" class="max-w-[32px] mr-3" alt="" loading="lazy"> Application Acceleration </li> <li class="tab-control hidden sm:flex w-1/2 md:w-full p-2 cursor-pointer items-center" :class="tab == 'high_availability_hapee_features' ? 'font-bold' : ''" @click="tab = 'high_availability_hapee_features'"> <img src="https://cdn.haproxy.com/assets/solutions-icons/haproxy-features-high-availability.png" class="max-w-[32px] mr-3" alt="high availability icon" loading="lazy"> High Availability </li> <li class="tab-control hidden sm:flex w-1/2 md:w-full p-2 cursor-pointer items-center" :class="tab == 'administration_hapee_features' ? 'font-bold' : ''" @click="tab = 'administration_hapee_features'"> <img src="https://cdn.haproxy.com/assets/haproxy-features-administration.png" class="max-w-[32px] mr-3" alt="" loading="lazy"> Administration </li> <li class="tab-control hidden sm:flex w-1/2 md:w-full p-2 cursor-pointer items-center" :class="tab == 'technical_support_hapee_features' ? 'font-bold' : ''" @click="tab = 'technical_support_hapee_features'"> <img src="https://cdn.haproxy.com/assets/solutions-icons/haproxy-features-technical-support.png" class="max-w-[32px] mr-3" alt="technical support icon" loading="lazy"> Technical Support </li> </ul> <div class="tab-contents md:border-l-[5px] border-blue-500 block-sm md:w-3/4 flex flex-row flex-wrap" x-show="tab == 'load_balancer_hapee_features'" style="display:none;"> <div > <div class="flex flex-row flex-wrap container"> <div class="px-default w-full block md:hidden" > <div > <h2 > Load Balancer </h2> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>Comprehensive Load Balancing Methods</strong></p><p>Load balance by round robin, least connections, URI, IP address and several hashing methods.</p> </div> <div class="my-6"> <p><strong>Advanced Routing Decisions</strong></p><p>Send requests to specific application clusters based on URL, domain name, file extension, client IP address, health state of backends, number of active connections, SSL client certificate, and more.</p> </div> <div class="my-6"> <p><strong>Stickiness/Persistence</strong></p><p>Maintain users' sessions based on TCP/IP information or any property of the HTTP request (cookies, headers, URI, and more).</p> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>Extensive ACL System</strong></p><p>Make advanced decisions based on any TCP/IP or UDP information or HTTP attribute with full logical operator support.</p> </div> <div class="my-6"> <p><strong>LUA Scripting Support</strong></p><p>Extend and customize HAProxy with Lua scripts that have access to the request/response pipeline.</p> </div> <div class="my-6"> <p><strong>Global Server Load Balancing (GSLB)</strong></p><p>Distribute client requests across geographically dispersed data centers to ensure the utmost performance and high availability.</p> </div> </div> </div> </div> </div> <div class="tab-contents md:border-l-[5px] border-blue-500 block-sm md:w-3/4 flex flex-row flex-wrap" x-show="tab == 'security_layer_hapee_features'" style="display:none;"> <div > <div class="flex flex-row flex-wrap container"> <div class="px-default w-full block md:hidden" > <div > <h2 > Security Layer </h2> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>Reverse Proxy</strong></p><p>Proxy all traffic from the Internet to your application servers through HAProxy, exposing only intended services and logging requests.</p> </div> <div class="my-6"> <p><strong>HAProxy Enterprise Bot Management Module</strong></p><p>Identify, categorize, and filter bots attempting to access your web applications. Stops malicious bots engaged in DDoS attacks, fraud, scraping, brute force attacks and more – without blocking legitimate bots or web tools.</p> </div> <div class="my-6"> <p><strong>HTTP Validation</strong></p><p>Validate that requests comply with the protocol specifications before sending them on to application servers.</p> </div> <div class="my-6"> <p><strong>Advanced Application-Based DDoS Protection</strong></p><p>Block requests from clients based on multiple metrics and criteria over a configurable time window.</p> </div> <div class="my-6"> <p><strong>Anomalous Behavior Protection</strong></p><p>Combine multiple metrics about a client's behavior for smarter routing and access decisions.</p> </div> <div class="my-6"> <p><strong>Search Engine Verification</strong></p><p>Check the authenticity of any client that claims to be a search engine crawler and enforce response policies against those it categorizes as phony. The verification is performed in the background in real-time so that legitimate web crawlers are not blocked.</p> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>Web Application Firewall</strong></p><p>Enable the next-generation <a href="/solutions/web-application-firewall">HAProxy Enterprise WAF</a> powered by our Intelligent WAF Engine with exceptional balanced accuracy, imperceptible latency, and optional OWASP Core Rule Set (CRS) compatibility with massively-boosted performance and low false positives.</p> </div> <div class="my-6"> <p><strong>Dynamic ACL Updates</strong></p><p>Updates ACL, Map, or TLS ticket key files in memory normally loaded from disk during HAProxy startup during runtime.</p> </div> <div class="my-6"> <p><strong>CAPTCHA Module</strong></p><p>Presents a CAPTCHA challenge to clients that exhibit anomalous traffic patterns.</p> </div> <div class="my-6"> <p><strong>SAML Module</strong></p><p>Provide single-sign-on (SSO) to any web application located behind an HAProxy Enterprise server.</p> </div> <div class="my-6"> <p><strong>Client Fingerprinting</strong></p><p>Generate a unique identifier based on a client request.</p> </div> <div class="my-6"> <p><strong>Traffic Filtering</strong></p><p>Use ACLs to detect any condition in HTTP(S) traffic and route or block the request as desired.</p> </div> </div> </div> </div> </div> <div class="tab-contents md:border-l-[5px] border-blue-500 block-sm md:w-3/4 flex flex-row flex-wrap" x-show="tab == 'application_acceleration_hapee_features'" style="display:none;"> <div > <div class="flex flex-row flex-wrap container"> <div class="px-default w-full block md:hidden" > <div > <h2 > Application Acceleration </h2> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>High-Performance SSL/TLS</strong></p><p>Terminate TLS on the HAProxy load balancer, optionally establishing a TLS connection to the backend server for end-to-end encryption.</p> </div> <div class="my-6"> <p><strong>HAProxy Enterprise UDP Module</strong></p><p>Accelerate time-sensitive UDP applications with best-in-class performance and reliability.</p> </div> <div class="my-6"> <p><strong>Advanced SSL Algorithm Selection</strong></p><p>Automatically pick the optimal certificate for a given client, enabling simultaneous use of ECC and RSA.</p> </div> <div class="my-6"> <p><strong>HTTP/2 and HTTP/3 Support</strong></p><p>Accelerate end-to-end communication using both the HTTP/2 and HTTP/3 protocols.</p> </div> <div class="my-6"> <p><strong>gRPC</strong></p><p>Route and load balance gRPC calls between services, taking advantage of its efficient, binary serialization.</p> </div> <div class="my-6"> <p><strong>Multithreading</strong></p><p>Split processing across multiple threads while sharing the same memory space.</p> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>Connection Pooling</strong></p><p>Reuse idle connections between HAProxy and your backend servers to save time.</p> </div> <div class="my-6"> <p><strong>Compression</strong></p><p>Reduce bandwidth usage by compressing HTTP responses from backends before passing them on to clients.</p> </div> <div class="my-6"> <p><strong>Geolocation Support</strong></p><p>Load geolocation databases from multiple vendors into HAProxy for advanced request handling, routing, and for passing information on to your application servers. Includes live updating of databases.</p> </div> <div class="my-6"> <p><strong>Device Intelligence</strong></p><p>Gets information about a client by passing the user-agent string to one of HAProxy’s supported device detection databases.</p> </div> <div class="my-6"> <p><strong>Object Caching</strong></p><p>Offload static content delivery from your application servers so they can perform their primary duty—delivering the application.</p> </div> </div> </div> </div> </div> <div class="tab-contents md:border-l-[5px] border-blue-500 block-sm md:w-3/4 flex flex-row flex-wrap" x-show="tab == 'high_availability_hapee_features'" style="display:none;"> <div > <div class="flex flex-row flex-wrap container"> <div class="px-default w-full block md:hidden" > <div > <h2 > High Availability </h2> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>Traffic Shadowing</strong></p><p>Mirror requests from one environment to another for testing new features.</p> </div> <div class="my-6"> <p><strong>Hitless Reloads</strong></p><p>Eliminate lost connections. Reloads of HAProxy Enterprise do not lose any connections during upgrades or changes to the configuration.</p> </div> <div class="my-6"> <p><strong>Route Health Injection (RHI)</strong></p><p>An optimized version of a third party software that allows for the control of routing protocol announcements based on the health of the network and the HAProxy service for active/active clustering.</p> </div> <div class="my-6"> <p><strong>VRRP</strong></p><p>An optimized version of the keepalived daemon for active/passive clustering.</p> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>Advanced Health Checks</strong></p><p>Gain flexibility when monitoring your backend servers with both active and passive health checks. You can also deploy Agent software to remotely push state changes to HAProxy from your monitored servers.</p> </div> <div class="my-6"> <p><strong>Slow Start</strong></p><p>Slowly increase the rate of new sessions sent to a backend when it comes up instead of sending traffic all at once.</p> </div> <div class="my-6"> <p><strong>Slow Stop</strong></p><p>Drain requests from servers, while allowing users to finish their sessions.</p> </div> <div class="my-6"> <p><strong>Traffic Overload Protection</strong></p><p>Limit the maximum number of connections assigned to application servers, either sending them to other server clusters or queuing the requests in HAProxy if that limit is reached.</p> </div> </div> </div> </div> </div> <div class="tab-contents md:border-l-[5px] border-blue-500 block-sm md:w-3/4 flex flex-row flex-wrap" x-show="tab == 'administration_hapee_features'" style="display:none;"> <div > <div class="flex flex-row flex-wrap container"> <div class="px-default w-full block md:hidden" > <div > <h2 > Administration </h2> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>Runtime API</strong></p><p>Programmatically pull data from or make changes to HAProxy during runtime.</p> </div> <div class="my-6"> <p><strong>DNS for Service Discovery</strong></p><p>Dynamically scale the number of application servers by querying a service registry over DNS.</p> </div> <div class="my-6"> <p><strong>Dynamic Server Creation and Management</strong></p><p>Provision multiple application servers with a single server line to be filled in during runtime.</p> </div> <div class="my-6"> <p><strong>Extensive Logging</strong></p><p>Log information about requests, with support for syslog and cloud-native logging.</p> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>Streaming Metrics</strong></p><p>View your services' health, traffic rates, and load aggregated across multiple load balancer instances. Administer enabling, disabling and draining of backends.</p> </div> <div class="my-6"> <p><strong>Global Profiling Engine</strong></p><p>Provides realtime aggregated values from stick tables across multiple processes or servers in a cluster which allows for which allows for real-time monitoring.</p> </div> <div class="my-6"> <p><strong>SSO Module</strong></p><p>Enable Single sign-on (SSO) on a Microsoft Active Directory domain.</p> </div> <div class="my-6"> <p><strong>Data Plane API</strong></p><p>Programmatically add, modify, or remove sections of your configuration using the HTTP API.</p> </div> </div> </div> </div> </div> <div class="tab-contents md:border-l-[5px] border-blue-500 block-sm md:w-3/4 flex flex-row flex-wrap" x-show="tab == 'technical_support_hapee_features'" style="display:none;"> <div > <div class="flex flex-row flex-wrap container"> <div class="px-default w-full block md:hidden" > <div > <h2 > Technical Support </h2> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>Authoritative Experts</strong></p><p>The team which is authoritative on HAProxy.</p> </div> <div class="my-6"> <p><strong>Proactive</strong></p><p>Proactive team will identify and resolve your issues before you even notice them.</p> </div> <div class="my-6"> <p><strong>Follow-the-Sun Support Model</strong></p> </div> </div> <div class="px-default w-full md:w-1/2" > <div class="my-6"> <p><strong>Knowledgable in Linux, Networking, and HAProxy</strong></p><p>No need to worry about searching documentation again.</p> </div> <div class="my-6"> <p><strong>24x7x365 Availability</strong></p><p>Premium 24/7 support available.</p> </div> </div> </div> </div> </div> </div> </div> <div class="text-center"> <a class="btn-primary " href="/hapee-trial" > Start Your Free Trial </a> <a class="btn-primary " href="/documentation/hapee/latest" > Documentation </a> </div> </div> <div class="px-default w-full pt-5 mt-5" > <div class="mx-auto full"> <h2 class="text-3xl text-center" > Unparalleled Versatility </h2> </div> </div> <div class="px-default w-full" > <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-versatility-1.png/4d55648d350372549feaf2cb7cd5d384/haproxy-versatility-1.webp" alt="HAProxy's Unparalleled Versatility" class="mx-auto px-5 hidden md:block" loading="lazy" > <img src="https://cdn.haproxy.com/img/containers/assets/haproxy-versatility.png/15bc2828050b63515b0080b195fadb9d/haproxy-versatility.webp" alt="HAProxy's Unparalleled Versatility" class="mx-auto block md:hidden" loading="lazy" > </div> </div> </div> <div class="py-12 section"> <div class="flex flex-row flex-wrap container"> <div class="px-default w-full text-center" > <div class="text-center"> <h2 class="font-main font-semibold !text-lg max-w-3xl mx-auto text-gray-700 leading-relaxed" > Contact the authoritative experts on HAProxy who will assist you in finding the solution that best fits your needs for deployment, scale, and security. </h2> </div> <a href="/contact-us" class="btn-primary " > Contact Our Experts </a> </div> </div> </div> </div> <footer id="mainfooter"> <div id="main-footer-top" class="py-3 section"> <div class="container flex flex-row flex-wrap mt-2"> <div class="flex flex-col items-center w-full px-default lg:w-1/4 sm:flex-row lg:flex-col"> <div class="w-full img-container sm:w-1/3 lg:w-full"> <a href="/"> <img src="/assets/our_logos/svg/haproxy-horizontal-monochrome.svg" width="230" height="55" alt="haproxy-logo" class="max-w-[230px] sm:mx-auto pb-6 mt-7" loading="lazy"> </a> </div> <div class="w-full pt-6 text-sm border-t sm:ml-6 sm:border-t-0 sm:pt-0 sm:pl-6 sm:border-l lg:border-t lg:pt-6 lg:pl-0 lg:border-l-0 sm:w-2/3 lg:w-full"> <div> <a class="block font-bold" href="tel:+1 (844) 222-4340">+1 (844) 222-4340</a> </div> <h3 class="block font-semibold text-heading-footer font-main"> Connect with Us </h3> <div class="flex flex-row w-full mx-auto"> <a class="block w-1/12 mr-3 socialico" href="mailto:contact@haproxy.com" title="Email HAProxy Techologies" target="_blank" rel="noreferrer" > <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Email HAProxy Techologies</title><path d="M15.61 12c0 1.99-1.62 3.61-3.61 3.61-1.99 0-3.61-1.62-3.61-3.61 0-1.99 1.62-3.61 3.61-3.61 1.99 0 3.61 1.62 3.61 3.61M12 0C5.383 0 0 5.383 0 12s5.383 12 12 12c2.424 0 4.761-.722 6.76-2.087l.034-.024-1.617-1.879-.027.017A9.494 9.494 0 0 1 12 21.54c-5.26 0-9.54-4.28-9.54-9.54 0-5.26 4.28-9.54 9.54-9.54 5.26 0 9.54 4.28 9.54 9.54a9.63 9.63 0 0 1-.225 2.05c-.301 1.239-1.169 1.618-1.82 1.568-.654-.053-1.42-.52-1.426-1.661V12A6.076 6.076 0 0 0 12 5.93 6.076 6.076 0 0 0 5.93 12 6.076 6.076 0 0 0 12 18.07a6.02 6.02 0 0 0 4.3-1.792 3.9 3.9 0 0 0 3.32 1.805c.874 0 1.74-.292 2.437-.821.719-.547 1.256-1.336 1.553-2.285.047-.154.135-.504.135-.507l.002-.013c.175-.76.253-1.52.253-2.457 0-6.617-5.383-12-12-12"/></svg> </a> <a class="block w-1/12 mr-3 socialico" href="https://www.facebook.com/haproxy.technologies" title="HAProxy Techologies on Facebook" target="_blank" rel="noreferrer" > <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>HAProxy Techologies on Facebook</title><path d="M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"/></svg> </a> <a class="block w-1/12 mr-3 socialico" href="https://www.github.com/haproxytech" title="HAProxy Techologies on GitHub" target="_blank" rel="noreferrer" > <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>HAProxy Techologies on GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg> </a> <a class="block w-1/12 mr-3 socialico" href="https://www.linkedin.com/company/haproxy-technologies" title="" target="_blank" rel="noreferrer" > <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>HAProxy Techologies on LinkedIn</title><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/></svg> </a> <a class="block w-1/12 mr-3 socialico" href="https://www.x.com/haproxy" title="HAProxy Techologies on X" target="_blank" rel="noreferrer" > <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><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"/></svg> </a> <a class="block w-1/12 mr-3 socialico" href="https://www.youtube.com/c/HAProxyTechnologies" title="HAProxy Techologies on YouTube" target="_blank" rel="noreferrer" > <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>HAProxy Techologies on YouTube</title><path d="M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z"/></svg> </a> <a class="block w-1/12 mr-3 socialico" href="https://slack.haproxy.org" title="HAProxy Techologies on Slack" target="_blank" rel="noreferrer" > <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>HAProxy Techologies on Slack</title><path d="M5.042 15.165a2.528 2.528 0 0 1-2.52 2.523A2.528 2.528 0 0 1 0 15.165a2.527 2.527 0 0 1 2.522-2.52h2.52v2.52zM6.313 15.165a2.527 2.527 0 0 1 2.521-2.52 2.527 2.527 0 0 1 2.521 2.52v6.313A2.528 2.528 0 0 1 8.834 24a2.528 2.528 0 0 1-2.521-2.522v-6.313zM8.834 5.042a2.528 2.528 0 0 1-2.521-2.52A2.528 2.528 0 0 1 8.834 0a2.528 2.528 0 0 1 2.521 2.522v2.52H8.834zM8.834 6.313a2.528 2.528 0 0 1 2.521 2.521 2.528 2.528 0 0 1-2.521 2.521H2.522A2.528 2.528 0 0 1 0 8.834a2.528 2.528 0 0 1 2.522-2.521h6.312zM18.956 8.834a2.528 2.528 0 0 1 2.522-2.521A2.528 2.528 0 0 1 24 8.834a2.528 2.528 0 0 1-2.522 2.521h-2.522V8.834zM17.688 8.834a2.528 2.528 0 0 1-2.523 2.521 2.527 2.527 0 0 1-2.52-2.521V2.522A2.527 2.527 0 0 1 15.165 0a2.528 2.528 0 0 1 2.523 2.522v6.312zM15.165 18.956a2.528 2.528 0 0 1 2.523 2.522A2.528 2.528 0 0 1 15.165 24a2.527 2.527 0 0 1-2.52-2.522v-2.522h2.52zM15.165 17.688a2.527 2.527 0 0 1-2.52-2.523 2.526 2.526 0 0 1 2.52-2.52h6.313A2.527 2.527 0 0 1 24 15.165a2.528 2.528 0 0 1-2.522 2.523h-6.313z"/></svg> </a> <a class="block w-1/12 mr-3 socialico" href="https://www.reddit.com/r/haproxy/" title="HAProxy Techologies on Reddit" target="_blank" rel="noreferrer" > <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M373 138.6c-25.2 0-46.3-17.5-51.9-41l0 0c-30.6 4.3-54.2 30.7-54.2 62.4l0 .2c47.4 1.8 90.6 15.1 124.9 36.3c12.6-9.7 28.4-15.5 45.5-15.5c41.3 0 74.7 33.4 74.7 74.7c0 29.8-17.4 55.5-42.7 67.5c-2.4 86.8-97 156.6-213.2 156.6S45.5 410.1 43 323.4C17.6 311.5 0 285.7 0 255.7c0-41.3 33.4-74.7 74.7-74.7c17.2 0 33 5.8 45.7 15.6c34-21.1 76.8-34.4 123.7-36.4l0-.3c0-44.3 33.7-80.9 76.8-85.5C325.8 50.2 347.2 32 373 32c29.4 0 53.3 23.9 53.3 53.3s-23.9 53.3-53.3 53.3zM157.5 255.3c-20.9 0-38.9 20.8-40.2 47.9s17.1 38.1 38 38.1s36.6-9.8 37.8-36.9s-14.7-49.1-35.7-49.1zM395 303.1c-1.2-27.1-19.2-47.9-40.2-47.9s-36.9 22-35.7 49.1c1.2 27.1 16.9 36.9 37.8 36.9s39.3-11 38-38.1zm-60.1 70.8c1.5-3.6-1-7.7-4.9-8.1c-23-2.3-47.9-3.6-73.8-3.6s-50.8 1.3-73.8 3.6c-3.9 .4-6.4 4.5-4.9 8.1c12.9 30.8 43.3 52.4 78.7 52.4s65.8-21.6 78.7-52.4z"/></svg> </a> </div> </div> </div> <div class="w-full px-default sm:w-1/2 md:w-1/3 lg:w-1/4"> <div> <h3 class="text-heading-footer"> Products </h3> <ul> <li class="text-sm"> <a href="/products/haproxy-enterprise">HAProxy Enterprise</a> </li> <li class="text-sm"> <a href="/products/haproxy-enterprise-kubernetes-ingress-controller">HAProxy Enterprise Kubernetes Ingress Controller</a> </li> <li class="text-sm"> <a href="/products/haproxy-aloha">HAProxy ALOHA</a> </li> <li class="text-sm"> <a href="/products/haproxy-edge">HAProxy Edge</a> </li> <li class="text-sm"> <a href="/products/haproxy-fusion-control-plane">HAProxy Fusion Control Plane</a> </li> <li class="text-sm"> <a href="/products/haproxy-one">HAProxy One</a> </li> </ul> </div> <div> <h3 class="text-heading-footer"> Solutions </h3> <ul> <li class="text-sm"> <a href="/solutions/load-balancing">Load Balancing</a> </li> <li class="text-sm"> <a href="/solutions/high-availability">High Availability</a> </li> <li class="text-sm"> <a href="/solutions/administration">Administration</a> </li> <li class="text-sm"> <a href="/solutions/haproxy-gui-graphical-user-interface">HAProxy GUI</a> </li> <li class="text-sm"> <a href="/solutions/application-acceleration">Application Acceleration</a> </li> <li class="text-sm"> <a href="/solutions/security">Security</a> </li> <li class="text-sm"> <a href="/solutions/web-application-firewall">Web Application Firewall</a> </li> <li class="text-sm"> <a href="/solutions/api-gateway">API Gateway</a> </li> <li class="text-sm"> <a href="/solutions/kubernetes">Kubernetes</a> </li> <li class="text-sm"> <a href="/solutions/government-public-sector">Public Sector</a> </li> <li class="text-sm"> <a href="/solutions/udp-load-balancing">UDP Load Balancing</a> </li> </ul> </div> </div> <div class="w-full px-default sm:w-1/2 md:w-1/3 lg:w-1/4"> <div> <h3 class="text-heading-footer"> Resources </h3> <ul> <li class="text-sm"> <a href="https://www.haproxy.com/documentation/hapee/">HAProxy Enterprise Documentation</a> </li> <li class="text-sm"> <a href="https://www.haproxy.com/documentation/aloha/">HAProxy ALOHA Documentation</a> </li> <li class="text-sm"> <a href="https://www.haproxy.com/documentation/kubernetes/">HAProxy Kubernetes Ingress Controller Documentation</a> </li> <li class="text-sm"> <a href="/products/upgrade-haproxy-to-haproxy-enterprise">Compare Community with Enterprise</a> </li> <li class="text-sm"> <a href="/certified-integrations">Certified Integrations</a> </li> <li class="text-sm"> <a href="/user-spotlight-series">User Spotlight Series</a> </li> <li class="text-sm"> <a href="/content-library">Content Library</a> </li> <li class="text-sm"> <a href="/knowledge-base">Knowledge Base</a> </li> <li class="text-sm"> <a href="/blog">Blog</a> </li> <li class="text-sm"> <a href="/success-stories">Success Stories</a> </li> </ul> </div> <div> <h3 class="text-heading-footer"> Support </h3> <ul> <li class="text-sm"> <a href="https://my.haproxy.com/portal/cust/login">Customer Support Portal</a> </li> <li class="text-sm"> <a href="/support/support-options">Support Options</a> </li> <li class="text-sm"> <a href="/support/professional-services">Professional Services</a> </li> <li class="text-sm"> <a href="https://www.mail-archive.com/haproxy@formilux.org/">Community Mailing List</a> </li> </ul> </div> </div> <div class="w-full px-default sm:w-1/2 md:w-1/3 lg:w-1/4"> <div> <h3 class="text-heading-footer"> Company </h3> <ul> <li class="text-sm"> <a href="/company/about-us">About Us</a> </li> <li class="text-sm"> <a href="/contact-us">Contact Us</a> </li> <li class="text-sm"> <a href="/events">Events</a> </li> <li class="text-sm"> <a href="/company/careers">Careers</a> </li> <li class="text-sm"> <a href="/company/news">News</a> </li> </ul> </div> <div> <h3 class="text-heading-footer"> Partners </h3> <ul> <li class="text-sm"> <a href="/partners/partner-program">Partner Program</a> </li> <li class="text-sm"> <a href="/partners/partner-program/certification">Certified Integration Program</a> </li> <li class="text-sm"> <a href="/contact-us">Find a Partner</a> </li> <li class="text-sm"> <a href="/partners/dealregistration">Partner Deal Registration</a> </li> </ul> </div> </div> </div> </div> <div class="flex flex-row mt-8 bg-[#00000052] text-[14px]"> <div class="container mx-auto flex flex-row p-4 border-t-1 w-full text-[#666] copyright"> <div class="w-full md:w-3/4"> © 2025 HAProxy Technologies, LLC. All Rights Reserved<br /> <a href="/legal/haproxy-trademark-policy">Trademark</a> | <a href="/legal/privacy-policy">Privacy</a> | <a href="/legal/dmca-notice-and-takedown-policy">DMCA Policy</a> | <a href="/legal/subpoena-response-policy">Subpoena Response Policy</a> | <a href="/legal/acceptable-use-policy">Acceptable Use Policy (AUP)</a> | <a href="/legal/do-not-sell-my-personal-information">Do Not Sell My Personal Information</a> </div> <div class="w-full md:w-1/4 md:text-right"> <a href="/sitemap/">Sitemap</a> <br /> <!-- /components/_cookie_banner.antlers.html --> <span x-data x-cloak> <span x-init="Alpine.store('cookieBannerConsent', JSON.parse(localStorage.getItem('cookieBannerConsent')) === null ? false : true);"> <a @click.prevent="localStorage.setItem('cookieBannerConsent', null); Alpine.store('cookieBannerConsent', JSON.parse(localStorage.getItem('cookieBannerConsent')) === null ? false : true)" href="#">Manage Cookie Preferences</a> </span> </span> </div> </div> </div> </footer> <div class="fixed inset-0 z-10 hidden w-full h-full bg-slate-800 opacity-90" :class="{ 'lg:!block': (products || solutions || resources || support || company || gethaproxy) && !mobilenav }"> </div> <script defer src="https://cdn.haproxy.com/assets/js/alpine.js?id=62b903d8f6e5f46ce05d7888632c9e4f"></script> <script> function cookieBannerStorager() { const cookieBannerStore = { consent: JSON.parse(localStorage.getItem('cookieBannerConsent')) || null, set(value) { this.consent = value; localStorage.setItem('cookieBannerConsent', JSON.stringify(value)); }, uniqueId() { const dateString = Date.now().toString(36); const randomness = Math.random().toString(36).substr(2); return dateString + randomness; }, now() { return String(Date.now()); }, checkDates(dateString){ if(!dateString){ return true } const givenDate = new Date(dateString); if(givenDate == "Invalid Date"){ return true } const days = 1; const today = Date.now(); const timeDiff = today - givenDate; const diffInDays = timeDiff / (1000 * 3600 * 24); if (diffInDays > days) { return true } else { return false } } }; Alpine.store('cookieBanner', cookieBannerStore); } </script> <script defer src="https://cdn.haproxy.com/assets/js/plausible-goals.js?id=dca6fb78f259dab32d9abb3039368e3c"></script> <script defer> function focusForm(){ // autofocus form const firstField = document.querySelector("input[name='firstname']"); if(firstField){ firstField.focus(); } } </script> <script src="https://cdn.haproxy.com/assets/js/glightbox.min.js" async defer></script> <script> var interval = window.setInterval(function(){ if(window.GLightbox) { const lightbox = GLightbox({ touchNavigation: true, loop: true, autoplayVideos: true }); // console.log('GLightbox loaded'); window.clearInterval(interval); } }, 50); </script> <script> function carousel(settings) { return { active: 0, init() { var flkty = new Flickity(this.$refs.carousel, { wrapAround: true, autoPlay: settings.autoplay, pauseAutoPlayOnHover: settings.pauseonhover, prevNextButtons: settings.arrows, pageDots: settings.controls, cellSelector: '.carousel-cell', asNavFor: document.querySelector('.carousel-main'), contain: true, resize: true, draggable: true, fade: true, on: { ready: () => { let items = document.querySelectorAll('.carousel-cell') items.forEach(el => { el.classList.remove('hidden'); }); this.$nextTick(() => { flkty.resize(); }); } } }); flkty.on('change', i => this.active = i); } } } function carouselFilter() { return { active: 0, changeActive(i) { this.active = i; this.$nextTick(() => { let flkty = Flickity.data(this.$el.querySelectorAll('.carousel')[i]); flkty.resize(); }); } } } </script> <div class="ad ads adsbox ad-placement doubleclick ad-placeholder ad-badge" style="height: 1px;"></div> </body> </html>