/**
 * Swiper 11.1.14
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: September 12, 2024
 */

@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset,50%);width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next svg,.swiper-button-prev svg{width:100%;height:100%;object-fit:contain;transform-origin:center}.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev svg{transform:rotate(180deg)}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset,10px);right:auto}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-lock{display:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,rgba(0,0,0,.25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--swiper-pagination-progressbar-size,4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius,10px);position:relative;touch-action:none;background:var(--swiper-scrollbar-bg-color,rgba(0,0,0,.1))}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:var(--swiper-scrollbar-sides-offset,1%);bottom:var(--swiper-scrollbar-bottom,4px);top:var(--swiper-scrollbar-top,auto);z-index:50;height:var(--swiper-scrollbar-size,4px);width:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;left:var(--swiper-scrollbar-left,auto);right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);z-index:50;width:var(--swiper-scrollbar-size,4px);height:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:var(--swiper-scrollbar-drag-bg-color,rgba(0,0,0,.5));border-radius:var(--swiper-scrollbar-border-radius,10px);left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active{pointer-events:auto}.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-cube .swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */





*, *:before, *:after {
	box-sizing: border-box;
}


html {
	line-height: 1.15; 
	-webkit-text-size-adjust: 100%; 
}





body {
	margin: 0;
	
	overflow-x: clip;
}





hr {
	box-sizing: content-box;
	height: 0;
}



pre {
	font-family: monospace, monospace; 
	font-size: 1em; 
}





abbr[title] {
	border-bottom: none; 
	text-decoration: underline; 
	text-decoration: underline dotted; 
}



b,
strong {
	font-weight: 700;
}



code,
kbd,
samp {
	font-family: monospace, monospace; 
	font-size: 1em; 
}



small {
	font-size: 80%;
}



sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}





button,
input,
optgroup,
select,
textarea {
	font-family: inherit; 
	font-size: 100%; 
	line-height: 1.15; 
	margin: 0; 
}



button,
select { 
	text-transform: none;
}



button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}



button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}



button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}



fieldset {
	padding: 0.35em 0.75em 0.625em;
}



legend {
	padding: 0;
}



progress {
	vertical-align: baseline;
}



[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}



[type="search"] {
	-webkit-appearance: textfield; 
	outline-offset: -2px; 
}



[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}



::-webkit-file-upload-button {
	-webkit-appearance: button; 
	font: inherit; 
}





details {
	display: block;
}



summary {
	display: list-item;
}

svg {
	display: block;
}

img,
svg,
video {
	vertical-align: middle;
	max-width: 100%;
}





:root {
  --column-gap: 2.13%;
  --column-width-multiplier: 8.333;
}



.row-fluid {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}


  .row-fluid .span1,
  .row-fluid .span2,
  .row-fluid .span3,
  .row-fluid .span4,
  .row-fluid .span5,
  .row-fluid .span6,
  .row-fluid .span7,
  .row-fluid .span8,
  .row-fluid .span9,
  .row-fluid .span10,
  .row-fluid .span11,
  .row-fluid .span12{
  min-height: 0;
  width: 100%;
}



@media (min-width: 768px) {
  .row-fluid {
    flex-wrap: nowrap;
    justify-content: space-between;
  }

  
    .row-fluid .span1 {
      width: calc(var(--column-width-multiplier) * 1% * 1 - var(--column-gap) * (11 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span2 {
      width: calc(var(--column-width-multiplier) * 1% * 2 - var(--column-gap) * (10 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span3 {
      width: calc(var(--column-width-multiplier) * 1% * 3 - var(--column-gap) * (9 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span4 {
      width: calc(var(--column-width-multiplier) * 1% * 4 - var(--column-gap) * (8 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span5 {
      width: calc(var(--column-width-multiplier) * 1% * 5 - var(--column-gap) * (7 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span6 {
      width: calc(var(--column-width-multiplier) * 1% * 6 - var(--column-gap) * (6 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span7 {
      width: calc(var(--column-width-multiplier) * 1% * 7 - var(--column-gap) * (5 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span8 {
      width: calc(var(--column-width-multiplier) * 1% * 8 - var(--column-gap) * (4 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span9 {
      width: calc(var(--column-width-multiplier) * 1% * 9 - var(--column-gap) * (3 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span10 {
      width: calc(var(--column-width-multiplier) * 1% * 10 - var(--column-gap) * (2 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span11 {
      width: calc(var(--column-width-multiplier) * 1% * 11 - var(--column-gap) * (1 * var(--column-width-multiplier) / 100));
    }
  
}
.content-wrapper {
  margin: 0 auto;
  padding: 0 1rem;
}

@media screen and (min-width: 1380px) {
  .content-wrapper {
    padding: 0;
  }
}

.dnd-section > .row-fluid {
  margin: 0 auto;
}

.dnd-section .dnd-column {
  padding: 0 0rem;
}

@media (max-width: 768px) {
  .dnd-section .dnd-column {
    padding: 0;
  }
}

:root {
	
	--white: #FFFFFF;
	--grey: #383f47;
	--cardBorderColour: #E4E4E4;
	--bodyColour: #141517;
	--ctaPrimaryColour: #a1bf24;       
	--primaryColour: #13192d;   

	

	
	--foundation-50:  #f5f7fa;
	--foundation-100: #edf0f5;
	--foundation-200: #dde2eb;
	--foundation-300: #bcc4d1;
	--foundation-400: #9da4b2;
	--foundation-500: #7b8194;
	--foundation-600: #555c70;
	--foundation-700: #3b4257;
	--foundation-800: #252c42;
	--foundation-900: #13192d; 
	--foundation-950: #0d1220;     

	
	--signal-50:  #f8f9fa;
	--signal-100: #ebeef1;
	--signal-200: #dadfe5;
	--signal-300: #b4bfcb;
	--signal-400: #8f9fb1;
	--signal-500: #6f839a;
	--signal-600: #566d89;
	--signal-700: #385474;
	--signal-800: #1f3e62;
	--signal-900: #062951; 
	--signal-950: #052141;

	
	--azure-50:  #f3f9fc;
	--azure-100: #e8f3f9;
	--azure-200: #cae2f1;
	--azure-300: #a3cde7;
	--azure-400: #75b5da;
	--azure-500: #479cce;
	--azure-600: #1983c2; 
	--azure-700: #156fa5;
	--azure-800: #125c88;
	--azure-900: #0e486b;
	--azure-950: #0a344e;

	
	--neon-pulse-50:  #f7faed;
	--neon-pulse-100: #f1f5de;
	--neon-pulse-200: #e7efc8;
	--neon-pulse-300: #d9e5a7;
	--neon-pulse-400: #c7d97c;
	--neon-pulse-500: #b4cc50; 
	--neon-pulse-600: #a1bf24;    
	--neon-pulse-950: #404c0e;

	
	--signal-teal-50:  #f2f9fa;
	--signal-teal-100: #e6f4f5;
	--signal-teal-200: #bfe3e6;
	--signal-teal-300: #99d2d7;
	--signal-teal-400: #67bbc2;
	--signal-teal-500: #2ca1ab;
	--signal-teal-600: #018e9a; 
	--signal-teal-700: #017983;
	--signal-teal-800: #01636c;
	--signal-teal-900: #014e55;
	--signal-teal-950: #00393e;

	
	--codebase-green-50:  #f4f9f6;
	--codebase-green-100: #e9f3ec;
	--codebase-green-200: #cde4d4;
	--codebase-green-300: #a8d1b3;
	--codebase-green-400: #7db98e;
	--codebase-green-500: #51a268;
	--codebase-green-600: #268b42; 
	--codebase-green-700: #207638;
	--codebase-green-800: #1b612e;
	--codebase-green-900: #154c24;
	--codebase-green-950: #0f381a;

	
	--error-50:  #fff0ef;
	--error-100: #ffdfdb;
	--error-200: #ffc5c0;
	--error-300: #ff9e96;
	--error-400: #ff6b5e;
	--error-500: #f84233;
	--error-600: #e22618; 
	--error-700: #ba1f14;
	--error-800: #961d14;
	--error-900: #7a1e17;
	--error-950: #3f0f0b;

	
	--warning-50:  #fff6ea;
	--warning-100: #ffeacf;
	--warning-200: #fed1a0;
	--warning-300: #fdb169;
	--warning-400: #fa8735;
	--warning-500: #f86816;
	--warning-600: #e74e0f; 
	--warning-700: #ba390f;
	--warning-800: #8f2e13;
	--warning-900: #712813;
	--warning-950: #3b1409;

	
	--text-primary:  var(--foundation-900); 
	--text-accent:   #b4cc50; 
	--bg-secondary:  var(--foundation-50);  
	--panel-primary: var(--white);          

	
	--border-grid: #272e47;
}

:root {
	--shadow-xs:  0 0.1rem 0.2rem 0 rgba(19, 25, 45, 0.08);
	--shadow-sm:  0 0.2rem 0.4rem 0 rgba(19, 25, 45, 0.08);
	--shadow-md:  0 0.4rem 0.8rem 0 rgba(19, 25, 45, 0.1);
	--shadow-lg:  0 0.8rem 1.6rem -0.2rem rgba(19, 25, 45, 0.1);
	--shadow-xl:  0 1.2rem 2.4rem -0.4rem rgba(19, 25, 45, 0.12);
	--shadow-2xl: 0 0.6rem 1.2rem -0.3rem rgba(19, 25, 45, 0.08), 0 2.8rem 5.6rem -1.4rem rgba(19, 25, 45, 0.15);
	--shadow-3xl: 0 1.2rem 2.4rem -0.6rem rgba(19, 25, 45, 0.08), 0 5rem 10rem -2.5rem rgba(19, 25, 45, 0.15);
}

:root {
	--radius-none: 0;
	--radius-xs:   0.6rem;   
	--radius-sm:   0.8rem;   
	--radius-md:   1.2rem;   
	--radius-base: 1.6rem;   
	--radius-lg:   2rem;     
	--radius-xl:   2.4rem;   
	--radius-max:  999.9rem; 
}





a {
	text-decoration: none;
	color: var(--primaryColour);
}


.btn {
	
    outline: none;
	cursor: pointer;
    font-size: 1.4rem;
	text-wrap: nowrap;
	font-weight: 700;
	text-align: center;
	border-radius: 0.5rem;
	color: var(--white);
	display: inline-flex;
	text-decoration: none;
	padding: 2.2rem 3.5rem;
	transition: all 250ms ease;
	background-color: var(--ctaPrimaryColour);
	border: 0.2rem solid var(--ctaPrimaryColour);

}

.hs-button.primary.large {
	
    outline: none;
	cursor: pointer;
    font-size: 1.4rem;
	text-wrap: nowrap;
	font-weight: 700;
	text-align: center;
	border-radius: 0.5rem;
	color: var(--white);
	display: inline-flex;
	text-decoration: none;
	padding: 2.2rem 3.5rem;
	transition: all 250ms ease;
	background-color: var(--ctaPrimaryColour);
	border: 0.2rem solid var(--ctaPrimaryColour);

	
	box-shadow: 0.5rem 0.5rem 4rem 0 rgba(161, 191, 36, .3);
}
 
.hs-button.primary.large:hover {
	
    color: var(--primaryColour);
	border: 0.2rem solid transparent;
	background-color: var(--white);
	
	box-shadow: 0.5rem 0.5rem 4rem 0 rgba(161, 191, 36, .3);

}


.btn:hover {
	
    color: var(--primaryColour);
	border: 0.2rem solid transparent;
	background-color: var(--white);
	
	box-shadow: 0.5rem 0.5rem 4rem 0 rgba(161, 191, 36, .3);

}


.btn.outline {
	box-shadow: none;
	color: var(--primaryColour);
	background-color: var(--white);
}

.btn.outline:hover {
	color: var(--ctaPrimaryColour);
	background-color: var(--white);
	border: 0.2rem solid var(--ctaPrimaryColour);
	box-shadow: 0.5rem 0.5rem 4rem 0 rgba(161, 191, 36,.3);
}

.btn.filter {
	color: #1F4659;
	border-color: #141517;
	background-color: #fff;
	box-shadow: none;
}

.btn.filter.active {
	color: #fff;
	border-color: #00A9F3;
	background-color: #00A9F3;
}

.btn.filter:hover {
	color: #fff;
	border-color: #00A9F3;
	background-color: #00A9F3;
	box-shadow: none;
}

.btn.link {
	gap: 0.5rem;
	padding: 0;
	border: none;
	font-weight: 600;
	font-size: 1.4rem;
	align-items: center;
	position: relative;
	text-decoration: none;
	transition: all 0ms ease;
	background-color: transparent;
	color: var(--ctaPrimaryColour);
}

.btn.link:before {
	content: "";
	width: 100%;
	display: block;
	bottom: -0.3rem;
	left: 0;
	position: absolute;
	height: 0.2rem;
	background-color: var(--ctaPrimaryColour);
}

.btn.link:after {
	content: "";
	width: 1rem;
	height: 1rem;
	display: block;
	background-repeat: no-repeat;
	background-image: url('https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/Learn%20More%20Arrow.svg');
}


.btn.no-link {
	cursor: auto;
	border: none;
	padding-left: 0;
	padding-right: 0;
	color: var(--primaryColour);
	background-color: transparent;
}




.btn#menu {
	width: 100%;
	padding: 0;
	height: 4rem;
	border: none;
	max-width: 4rem;
	background-color: transparent;
}


.btn.scroll {
	gap: 0.5rem;
	padding: 0;
	border: none;
	color: #141517;
	align-items: center;
	background-color: transparent;
}




.btn.pricing-btn {
	font-size: 1.4rem;
	letter-spacing: 0;
	text-align: center;
	line-height: 1.2rem;
	font-weight: 700;
	padding: 1rem 2.8rem;
}



.btn.pill {
	color: var(--foundation-900);
	font-size: 1.6rem;
	font-weight: var(--fontWeightMedium);
	padding: 1.1rem 2.4rem;
	border-radius: var(--radius-max, 999.9rem);
	background-color: var(--neon-pulse-600);
	border-color: var(--neon-pulse-600);
	box-shadow: none;
}

.btn.pill:hover {
	color: var(--foundation-900);
	background-color: var(--neon-pulse-500);
	border-color: var(--neon-pulse-500);
	box-shadow: 0.4rem 0.4rem 4rem 0 rgba(180, 204, 80, 0.3);
}


.btn.pill.ghost {
	color: var(--white);
	background-color: rgba(255, 255, 255, 0.05);
	border-color: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(1rem);
	-webkit-backdrop-filter: blur(1rem);
}

.btn.pill.ghost:hover {
	color: var(--white);
	background-color: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.2);
	box-shadow: none;
}
:root {
	--primaryFont: var(--font-primary);   
	--secondaryFont: var(--font-primary); 
	--fontWeightLight: 300;
	--fontWeightRegular: 400;
	--fontWeightMedium: 500;
	--fontWeightSemiBold: 600;
	--fontWeightBold: 700;
}

html { font-size: 62.5%; }

h1, .h1 {
	margin: 0;
	font-size: 6rem;
	letter-spacing: 0;
    line-height: 6.5rem;
	margin-bottom: 2rem;
	font-family: var(--primaryFont);
	font-weight: var(--fontWeightSemiBold);
}

@media (max-width: 991px) {
	h1, .h1 {
		font-size: 4rem;
		line-height: 5rem;
	}
}

@media (max-width: 991px) {
	h1 br, .h1 br {
		display: none;
	}
}

.hs-landing-page h1 {
	font-size: 5rem;
    line-height: 6rem;
}

h2 {
	margin: 0;
	font-size: 4.5rem;
	letter-spacing: 0;
	line-height: 5.5rem;
	margin-bottom: 2rem;
	font-family: var(--primaryFont);
	font-weight: var(--fontWeightSemiBold);
}

@media (max-width: 768px) {
	h2 {
		font-size: 3.5rem;
		line-height: 4.5rem;
	}
}

h2:last-child {
	margin-bottom: 0;
}

h3 {
	margin: 0;
	font-size: 3rem;
	letter-spacing: 0rem;
	line-height: 1.25;
	margin-bottom: 2rem;
	font-family: var(--primaryFont);
	font-weight: var(--fontWeightSemiBold);
}

h3:last-child {
	margin-bottom: 0;
}

h4 {
	margin: 0;
	font-size: 2.5rem;
	letter-spacing: 0;
	line-height: 3rem;
	margin-bottom: 2rem;
	font-family: var(--primaryFont);
	font-weight: var(--fontWeightSemiBold);
}

h4:last-child {
	margin-bottom: 0;
}

h5 {
	margin: 0;
	font-size: 2.0rem;
	letter-spacing: 0;
	line-height: 3rem;
	margin-bottom: 2rem;
	font-family: var(--primaryFont);
	font-weight: var(--fontWeightSemiBold);
}

@media (max-width: 768px) {
	h5 {
		font-weight: var(--fontWeightMedium);
	}
}

h5:last-child {
	margin-bottom: 0;
}

ul {
	margin: 0;
	padding-left: 1.8rem;
	margin-bottom: 2rem;
}


ul:last-child {
	margin-bottom: 0 
}


p, li {
	margin: 0;
	font-size: 1.6rem;
	letter-spacing: 0;
	line-height: 2.5rem;
	margin-bottom: 2rem;
	font-family: var(--secondaryFont);
	font-weight: var(--fontWeightRegular);
}

p:last-child,
li:last-child {
	margin-bottom: 0
}






:root {
	
	--font-primary: "DM Sans", sans-serif;

	
	--text-xs:   1.2rem;
	--text-sm:   1.4rem;
	--text-base: 1.6rem;
	--text-lg:   2rem;
	--text-xl:   2.4rem;
	--text-2xl:  3.2rem;
	--text-3xl:  3.6rem;
	--text-4xl:  4.8rem;
	--text-5xl:  6rem;
	--text-6xl:  8rem;
	--text-7xl:  10.4rem;

	
	--leading-xs:   1.6rem;
	--leading-sm:   2rem;
	--leading-base: 2.4rem;
	--leading-lg:   2.8rem;
	--leading-xl:   3.2rem;
	--leading-2xl:  3.8rem;
	--leading-3xl:  4.2rem;
	--leading-4xl:  5.2rem;
	--leading-5xl:  6.2rem;
	--leading-6xl:  8rem;
	--leading-7xl:  9.6rem;

	
	--tracking-xs:   0;
	--tracking-sm:   0;
	--tracking-base: 0;
	--tracking-lg:   -0.05rem;
	--tracking-xl:   -0.025rem;
	--tracking-2xl:  -0.05rem;
	--tracking-3xl:  0;
	--tracking-4xl:  0.05rem;
	--tracking-5xl:  0.05rem;
	--tracking-6xl:  0.05rem;
	--tracking-7xl:  0;

	
	--tagline-2xs:  1rem;
	--tagline-xs:   1.2rem;
	--tagline-sm:   1.4rem;
	--tagline-base: 1.6rem;
	--tagline-lg:   2rem;
	--leading-tagline-2xs:  1.2rem;
	--leading-tagline-xs:   1.4rem;
	--leading-tagline-sm:   1.6rem;
	--leading-tagline-base: 2rem;
	--leading-tagline-lg:   2.4rem;
	--tracking-tagline-2xs:  0.075rem;
	--tracking-tagline-xs:   0.12rem;
	--tracking-tagline-sm:   0.14rem;
	--tracking-tagline-base: 0.16rem;
	--tracking-tagline-lg:   0.2rem;
}


@media (max-width: 1024px) {
	:root {
		--text-xl:  2.2rem;
		--text-2xl: 2.8rem;
		--text-3xl: 3.2rem;
		--text-5xl: 4.8rem;
		--text-6xl: 6.4rem;
		--text-7xl: 8rem;

		--leading-xl:  2.8rem;
		--leading-2xl: 3.6rem;
		--leading-3xl: 3.6rem;
		--leading-5xl: 5.4rem;
		--leading-6xl: 6.4rem;
		--leading-7xl: 8rem;

		--tagline-lg: 1.8rem;
	}
}


@media (max-width: 768px) {
	:root {
		--text-lg:  1.8rem;
		--text-xl:  2rem;
		--text-2xl: 2.4rem;
		--text-3xl: 2.8rem;
		--text-5xl: 3.6rem;
		--text-6xl: 4.4rem;
		--text-7xl: 5.6rem;

		--leading-lg:  2.6rem;
		--leading-2xl: 3.2rem;
		--leading-3xl: 3.2rem;
		--leading-5xl: 4.2rem;
		--leading-6xl: 4.8rem;
		--leading-7xl: 5.6rem;

		--tagline-lg:   1.6rem;
		--tagline-base: 1.4rem;
		--leading-tagline-base: 1.6rem;
	}
}


.form form {
	position: relative;
}

.form form fieldset .input {
	margin: 0 !important;
}

.form form fieldset.form-columns-1 {
	display: grid;
	max-width: 100%;
	margin-bottom: 3rem;
	grid-template-columns: repeat(1, 1fr);
}

.form form fieldset.form-columns-2 {
	gap: 3rem;
	display: grid;
	max-width: 100%;
	margin-bottom: 3rem;
	grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 480px) {
	.form form fieldset.form-columns-2 {
		grid-template-columns: repeat(1, 1fr);
	}
}

.form form fieldset.form-columns-2 .hs-form-field {
	width: 100%;
	float: none;
	margin-bottom: 0;
}

.form form fieldset.form-columns-2 .hs-form-field .input {
	margin-right: 0;
	margin-bottom: 0;
}

.form input[type="text"],
.form input[type="email"],
.form input[type="tel"] {
	width: 100% !important;
	height: 5.5rem;
	outline: none;
	display: block;
	border-radius: 0.4rem;
	padding: 0 1rem;
	border: 0.1rem solid #141517;
}

.form select {
	width: 100%;
	height: 5.5rem;
	outline: none;
	display: block;
	border-radius: 0.4rem;
	padding: 0 1rem;
	border: 0.1rem solid #141517;
}

.form textarea {
	width: 100% !important;
	min-height: 10rem;
	outline: none;
	display: block;
	padding: 2rem;
	margin: 0 !important;
	border-radius: 0.4rem;
	border: 0.1rem solid #141517;
}

.form .hs-fieldtype-file > label {
	display: flex;
	cursor: pointer;
	overflow: hidden;
	padding-left: 1rem;
	border-radius: 0.5rem;
	align-items: center;
	border: 0.2rem solid var(--ctaPrimaryColour);
	justify-content: space-between;
}

.form .hs-fieldtype-file > label:after {
	color: #fff;
	content: "Upload";
	padding: 2.33rem 4.88rem;
	background-color: var(--ctaPrimaryColour);
	font-weight: var(--fontWeightBold);
}

.form .hs-fieldtype-file .input {
	display: none;
}

.form .hs-form-field {
	margin-bottom: 0rem;
	position: relative;
}

.form .hs-form-field .hs-error-msgs,
.form .hs_error_rollup .hs-error-msgs {
	margin: 0;
	padding: 0;
	list-style: none;
}


.form .hs-form-field .hs-error-msgs {
	position: absolute;
}


.form .hs_error_rollup .hs-error-msgs {
	margin-bottom: 1.2rem;
}

.form .hs_error_rollup .hs-error-msgs li label,
.form .hs-form-field .hs-error-msgs li label.hs-error-msg {
	color: red;
	font-size: 1.3rem;
}

.form .legal-consent-container {
	gap: 3.5rem;
	display: flex;
	flex-direction: column;
}

.form .hs-richtext,
.form .hs-richtext p {
	font-size: 1.5rem;
	color: #141517;
	letter-spacing: 0;
	line-height: 2.5rem;
	font-weight: 400;
}


.form .inputs-list {
	list-style: none;
	padding: 0;
}

.form .legal-consent-container .hs-form-booleancheckbox-display {
	display: flex;
	align-items: center;
	justify-content: start;
	position: relative;

}


.form .legal-consent-container .hs-form-booleancheckbox-display input[type=checkbox] {
	position: absolute;
	width: 0.1rem;
	height: 0.1rem;
	margin: 0;
	padding: 0;
	border: 0;
	opacity: 0;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

.form .legal-consent-container .hs-form-booleancheckbox-display input[type=checkbox]:focus-visible + span:before {
	outline: 0.2rem solid #00A9F3;
	outline-offset: 0.2rem;
}

.form .legal-consent-container .hs-form-booleancheckbox-display span {
	gap: 1.2rem;
	margin: 0;
	display: flex;
	align-items: center;
	font-size: 1.5rem;
	color: #141517;
	letter-spacing: 0;
	line-height: 2.5rem;
	font-weight: 700;
}

.form .legal-consent-container .hs-form-booleancheckbox-display span:before {
	content: '';
	
	width: 2.3rem;
	min-width: 2.3rem;
	height: 2.3rem;
	display: block;
	border-radius: 0.5rem;
	border: 0.1rem solid #00A9F3;
}

.form .legal-consent-container .hs-form-booleancheckbox-display input[type=checkbox]:checked + span:before {
	background-position: center;
	background-repeat: no-repeat;
	background-image: url(https://144479753.fs1.hubspotusercontent-eu1.net/hubfs/144479753/raw_assets/public/entelect_corporate/images/check.svg);
}





.form.subscribe > h3 {
	font-size: 2rem;
	color: var(--white);
	text-transform: uppercase;
}

.form.subscribe input[type="email"] {
	background-color: transparent;
	border: 0.2rem solid var(--white);
}

.form.subscribe input[type="email"]::placeholder {
	color: var(--white);
}

.form.subscribe input[type="submit"] {
	border: none;
	outline: none;
	cursor: pointer;
	padding: 1rem 2rem;
	display: inline-flex;
	font-size: 1.2rem;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--primaryColour);
	background-color: var(--white);
}


.form.subscribe-cta-form form {
	display: flex;
}

.form.subscribe-cta-form form fieldset.form-columns-2 {
	gap: 1rem;
	grid-template-columns: 15ch 1fr;
}

.form.subscribe-cta-form form input[type=submit] {
	height: 4rem;
	outline: none;
	border: none;
	cursor: pointer;
	padding: 0 1.5rem;
	border-radius: 0;
	color: var(--white);
	background-color: var(--primaryColour);
}



.hs-search-field__bar.form form .hs-search-field__input {
	width: 100%;
	height: 5rem;
	max-width: 37rem;
	min-width: 37rem;
	font-size: 1.6rem;
    border-radius: 0.7rem;
	border: 0.2rem solid #141517;
}

.hs-search-field__bar.form form .hs-search-field__input::placeholder {
	color: #000;
	font-weight: 700;
}

.hs-search-field__bar.form form .search-icon {
	width: 2rem;
	height: 2rem;
	top: 0;
	bottom: 0;
	right: 2.3rem;
	margin: auto 0;
	position: absolute;
	background: none;
	border: none;
	outline: none;
	padding: 0;
	display: flex;
    align-items: center;
}

.hs-search-field__bar.form form .search-icon svg {
	width: 100%;
	max-width: 2rem;
}


.form .hs_submit.hs-submit .actions {
	display: flex;
	justify-content: start;
}
.card {
	background: var(--white);
	border: 0.1rem solid var(--cardBorderColour);
	box-shadow: 0.5rem 0.5rem 2.5rem 0.4rem rgba(22,27,48,0.05);
	border-radius: 0.7rem;
}

.container {
	width: 100%;
	margin: 0 auto;
	padding: 0 2rem;
	max-width: var(--containerWidth);
}

.cta-container {
	gap: 1.5rem;
	display: flex;
	align-items: center;
}

.cta-container.right {
	justify-content: end;
}

.cta-container.center {
	justify-content: center;
}

.cta-container.space-between {
	justify-content: space-between;
}

:root {
	--containerWidth: 144rem;
	--verticalSpacing: 8.0rem;
	--swiper-pagination-bottom: -3rem;
	--reveal-ease: cubic-bezier(0.38, 0.21, 0, 0.92);
	--reveal-duration: 0.6s;
	--reveal-shift: 4rem;
}

.no-scroll {
	overflow-y: hidden;
}

* {
	font-family: var(--primaryFont);
}

body {
	font-size: 1.6rem;
	
	overflow-x: clip;
}


#hs-banner-parent {
	--hs-banner-inset: auto 0 3.2rem 0 !important;
}


html.reveal-ready [data-reveal] {
	opacity: 0;
	transform: translateY(var(--reveal-shift, 4rem));
}

html.reveal-ready [data-reveal].is-revealed {
	opacity: 1;
	transform: translateY(0);
	transition: opacity var(--reveal-duration) var(--reveal-ease),
		transform var(--reveal-duration) var(--reveal-ease);
	transition-delay: var(--reveal-delay, 0ms);
}


html.reveal-ready [data-reveal="slide-left"] {
	transform: translateX(calc(-1 * var(--reveal-shift, 4rem)));
}
html.reveal-ready [data-reveal="slide-left"].is-revealed {
	transform: translateX(0);
}

@media (prefers-reduced-motion: reduce) {
	html.reveal-ready [data-reveal] {
		opacity: 1;
		transform: none;
		transition: none;
	}
}


html.reveal-ready [data-reveal="fade"],
html.reveal-ready [data-reveal="fade"].is-revealed {
	transform: none;
}


html.reveal-ready [data-reveal="slide"] {
	opacity: 1;
}


html.reveal-ready [data-reveal-lines] {
	opacity: 0;
}
html.reveal-ready [data-reveal-lines].is-split {
	opacity: 1;
}
.reveal-line {
	display: block;
	overflow: hidden;
	padding-bottom: 0.12em;
	margin-bottom: -0.12em;
}
.reveal-line__inner {
	display: block;
}
html.reveal-ready .reveal-line__inner[data-reveal] {
	opacity: 1;
	transform: translateY(115%);
}
html.reveal-ready .reveal-line__inner[data-reveal].is-revealed {
	transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
	html.reveal-ready [data-reveal-lines] { opacity: 1; }
	html.reveal-ready .reveal-line__inner[data-reveal] { transform: none; }
}


[data-reveal-lines="fade"] .reveal-line {
	overflow: visible;
	padding-bottom: 0;
	margin-bottom: 0;
}
html.reveal-ready [data-reveal-lines="fade"] .reveal-line__inner[data-reveal] {
	opacity: 0;
	transform: translateY(1.5rem);
}
html.reveal-ready [data-reveal-lines="fade"] .reveal-line__inner[data-reveal].is-revealed {
	opacity: 1;
	transform: translateY(0);
}


.orbs {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}


.orb {
	position: absolute;
	animation: orb-float 22s ease-in-out infinite;
}


.orb:nth-child(2n) { animation-duration: 26s; animation-delay: -7s; }
.orb:nth-child(3n) { animation-duration: 30s; animation-delay: -14s; }
.orb:nth-child(4n) { animation-duration: 24s; animation-delay: -3s; }

@keyframes orb-float {
	0%   { transform: translate(0, 0); }
	20%  { transform: translate(3.2rem, -2.4rem); }
	40%  { transform: translate(-2.4rem, 2rem); }
	60%  { transform: translate(2rem, 3.2rem); }
	80%  { transform: translate(-3.2rem, -1.6rem); }
	100% { transform: translate(0, 0); }
}

@media (prefers-reduced-motion: reduce) {
	.orb { animation: none; }
}


.shimmer-grid {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background-image: radial-gradient(color-mix(in srgb, var(--foundation-50) 6%, transparent) 0.06rem, transparent 0.14rem);
	background-size: 1.2rem 1.2rem;
	
	-webkit-mask-image: linear-gradient(to bottom, transparent, black 18%, black 82%, transparent);
	mask-image: linear-gradient(to bottom, transparent, black 18%, black 82%, transparent);
}

.shimmer-grid::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: radial-gradient(color-mix(in srgb, var(--foundation-50) 55%, transparent) 0.06rem, transparent 0.14rem);
	background-size: 1.2rem 1.2rem;
	
	-webkit-mask-image: radial-gradient(circle at var(--mx, 50%) var(--my, 50%), black, transparent 22rem);
	mask-image: radial-gradient(circle at var(--mx, 50%) var(--my, 50%), black, transparent 22rem);
	opacity: 0;
	transition: opacity 0.45s ease;
}

.shimmer-grid.is-active::before {
	opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
	.shimmer-grid::before { display: none; }
}



.menu-underlay {
	position: fixed;
	inset: 0;
	z-index: 1000;
	display: none;
	background-color: rgba(13, 18, 32, 0.6);
}

.mega-menu-container.menu-open .menu-underlay {
	display: block;
}

.mega-menu-container {
	--menu-bg: var(--signal-900); 
	--menu-text: var(--white);
	--menu-text-dim: var(--foundation-300);
	--menu-hairline: rgba(255, 255, 255, 0.12);
	--menu-hover: rgba(255, 255, 255, 0.06);
	position: relative;
	z-index: 1000;
	background-color: var(--menu-bg);
	color: var(--menu-text);
	font-family: var(--font-primary);
}


body:has(.home-page) .mega-menu-container,
body:has(.industries-page) .mega-menu-container,
body:has(.customer-story-page) .mega-menu-container,
body:has(.customer-stories-page) .mega-menu-container,
body:has(.what-we-do-page) .mega-menu-container,
body:has(.leadership-page) .mega-menu-container,
body:has(.about-page) .mega-menu-container,
body:has(.capabilities-page) .mega-menu-container,
body:has(.plain-page) .mega-menu-container,
body:has(.thank-you-page) .mega-menu-container,
body:has(.error-404-page) .mega-menu-container,
body:has(.error-500-page) .mega-menu-container,
body:has(.contact-page) .mega-menu-container {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	background-color: transparent;
	transition: background-color 0.3s ease, transform 0.35s ease;
}


body:has(.home-page) .mega-menu-container::before,
body:has(.industries-page) .mega-menu-container::before,
body:has(.customer-story-page) .mega-menu-container::before,
body:has(.customer-stories-page) .mega-menu-container::before,
body:has(.what-we-do-page) .mega-menu-container::before,
body:has(.leadership-page) .mega-menu-container::before,
body:has(.about-page) .mega-menu-container::before,
body:has(.capabilities-page) .mega-menu-container::before,
body:has(.plain-page) .mega-menu-container::before,
body:has(.thank-you-page) .mega-menu-container::before,
body:has(.error-404-page) .mega-menu-container::before,
body:has(.error-500-page) .mega-menu-container::before,
body:has(.contact-page) .mega-menu-container::before {
	content: "";
	position: absolute;
	inset: 0 0 auto 0;
	height: 200%;
	background: linear-gradient(to bottom, var(--menu-bg) 0%, var(--menu-bg) 25%, transparent 100%);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease;
	z-index: -1;
}
body:has(.home-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.industries-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.customer-story-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.customer-stories-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.what-we-do-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.leadership-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.about-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.capabilities-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.plain-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.thank-you-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.error-404-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.error-500-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before,
body:has(.contact-page) .mega-menu-container.is-scrolled:not(.is-hidden)::before {
	opacity: 1;
}


body:has(.home-page) .mega-menu-container.is-hidden,
body:has(.industries-page) .mega-menu-container.is-hidden,
body:has(.customer-story-page) .mega-menu-container.is-hidden,
body:has(.customer-stories-page) .mega-menu-container.is-hidden,
body:has(.what-we-do-page) .mega-menu-container.is-hidden,
body:has(.leadership-page) .mega-menu-container.is-hidden,
body:has(.about-page) .mega-menu-container.is-hidden,
body:has(.capabilities-page) .mega-menu-container.is-hidden,
body:has(.plain-page) .mega-menu-container.is-hidden,
body:has(.thank-you-page) .mega-menu-container.is-hidden,
body:has(.error-404-page) .mega-menu-container.is-hidden,
body:has(.error-500-page) .mega-menu-container.is-hidden,
body:has(.contact-page) .mega-menu-container.is-hidden {
	transform: translateY(-100%);
}


.mega-menu-container.has-open,
.mega-menu-container.menu-open {
	background-color: var(--menu-bg) !important;
}


.mega-menu-container ul,
.mega-menu-container li {
	margin: 0;
	padding: 0;
	list-style: none;
	line-height: normal;
}

.mega-menu-container a {
	color: var(--menu-text);
	text-decoration: none;
}

.mega-menu-container .ico {
	flex-shrink: 0;
	display: block;
}



.mega-menu-container .nav-bar {
	position: relative;
	padding: 1.6rem 0;
}

.mega-menu-container .nav-bar-inner {
	display: flex;
	align-items: center;
	gap: 2.4rem;
	height: 6.4rem;
}

.mega-menu-container .logo {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
}

.mega-menu-container .logo img {
	display: block;
	width: auto;
	height: 3.2rem;
}


.mega-menu-container .nav-bar-inner > .logo {
	margin-right: 5rem;
}

.mega-menu-container .nav-toggle {
	display: none;
	align-items: center;
	justify-content: center;
	width: 4rem;
	height: 4rem;
	margin-left: auto;
	padding: 0;
	color: var(--menu-text);
	background: none;
	border: 0;
	cursor: pointer;
}

.mega-menu-container .nav-toggle .ico {
	width: 2.4rem;
	height: 2.4rem;
}


.mega-menu-container .nav-links {
	flex: 1;
	display: flex;
	align-items: center;
	gap: 2.4rem;
	min-width: 0;
}

.mega-menu-container .drawer-head {
	display: none;
}

.mega-menu-container .links {
	flex: 1;
	display: flex;
	align-items: center;
	min-width: 0;
}

.mega-menu-container .nav-item {
	display: flex;
	align-items: center;
}

.mega-menu-container .nav-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	height: 6.4rem;
	padding: 0 1.2rem;
	font-family: inherit;
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightMedium);
	color: var(--menu-text);
	white-space: nowrap;
	background: none;
	border: 0;
	cursor: pointer;
	opacity: 1;
	transition: opacity 200ms ease;
}

.mega-menu-container .nav-link .ico-chevron {
	width: 2rem;
	height: 2rem;
	transition: transform 250ms ease;
}

.mega-menu-container .nav-link:hover {
	opacity: 1;
}

.mega-menu-container .nav-item.is-open > .nav-link .ico-chevron {
	transform: rotate(180deg);
}


.mega-menu-container .nav-cta {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	flex: none;
	padding: 0.9rem 1rem 0.9rem 1.8rem;
	border-radius: var(--radius-max);
	background: var(--neon-pulse-600);
	color: var(--foundation-950);
	font-family: inherit;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	white-space: nowrap;
	transition: background-color 200ms ease;
}

.mega-menu-container .nav-cta:hover {
	background: var(--neon-pulse-500);
	opacity: 1;
}

.mega-menu-container .nav-cta .ico-arrow {
	width: 2rem;
	height: 2rem;
	flex: none;
	transition: transform 200ms ease;
}

.mega-menu-container .nav-cta:hover .ico-arrow {
	transform: translateX(0.3rem);
}


@media (max-width: 1024px) {
	.mega-menu-container .nav-cta {
		width: 100%;
		justify-content: center;
		margin-top: 2rem;
		padding: 1.4rem 2rem;
	}
}


.mega-menu-container.has-open .nav-link,
.mega-menu-container.has-open .region-toggle {
	opacity: 0.5;
}

.mega-menu-container.has-open .nav-item.is-open > .nav-link,
.mega-menu-container.has-open .nav-link:hover,
.mega-menu-container.has-open .region-toggle:hover {
	opacity: 1;
}


.mega-menu-container .dropdown {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	z-index: 100;
	display: none;
	background-color: var(--menu-bg);
	box-shadow: var(--shadow-2xl);
}


.mega-menu-container .dropdown::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 100%;
	height: 2rem;
}

.mega-menu-container .nav-item.is-open > .dropdown {
	display: block;
}

.mega-menu-container .dropdown-inner {
	padding-top: 4rem;
	padding-bottom: 8rem;
}

.mega-menu-container .dropdown-content {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: 6.4rem 2.4rem;
}

.mega-menu-container .copy-header {
	grid-column: 2 / span 10;
	display: flex;
	flex-direction: column;
	gap: 1.3rem;
	max-width: 40rem;
}

.mega-menu-container .copy-header .title {
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--menu-text);
}

.mega-menu-container .copy-header .description {
	margin: 0;
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightLight);
	color: var(--menu-text-dim);
}


.mega-menu-container .menus {
	position: relative;
	grid-column: 2 / span 10;
	display: flex;
}

.mega-menu-container .sections {
	flex: 0 0 50%;
	max-width: 50%;
	display: flex;
	flex-direction: column;
}

.mega-menu-container .section-link {
	display: flex;
	align-items: center;
	gap: 0.8rem;
	width: 100%;
	min-height: 7.2rem;
	padding: 0.6rem 0;
	font-family: inherit;
	font-size: var(--text-2xl);
	line-height: var(--leading-2xl);
	letter-spacing: var(--tracking-2xl);
	font-weight: var(--fontWeightLight);
	color: var(--menu-text);
	text-align: left;
	background: none;
	border: 0;
	cursor: pointer;
	opacity: 0.85;
	transition: opacity 200ms ease;
}

.mega-menu-container .section-link:hover {
	opacity: 1;
}


.mega-menu-container .menus.has-active .section-link {
	opacity: 0.5;
}

.mega-menu-container .menus.has-active .section.is-active > .section-link,
.mega-menu-container .menus.has-active .section-link:hover {
	opacity: 1;
}

.mega-menu-container .section-link .ico-chevron-right {
	width: 2.4rem;
	height: 2.4rem;
}

.mega-menu-container .section-link .ico-arrow {
	width: 2.4rem;
	height: 2.4rem;
	opacity: 0;
	transform: translateX(-0.4rem);
	transition: opacity 200ms ease, transform 200ms ease;
}

.mega-menu-container .section-link:hover .ico-arrow {
	opacity: 1;
	transform: translateX(0);
}


.mega-menu-container .section-link__tail {
	white-space: nowrap;
}

.mega-menu-container .section-link__tail .ico {
	display: inline-block;
	position: relative;
	top: -0.3rem; 
	margin-left: 0.8rem;
	vertical-align: middle;
}

.mega-menu-container .section-link > .ico-chevron-right,
.mega-menu-container .section-link > .ico-arrow {
	display: none;
}


.mega-menu-container .section .children {
	position: absolute;
	top: 0;
	left: 50%;
	right: 0;
	display: none;
	max-height: 60vh;
	overflow-y: auto;
	padding-left: 2.4rem;
}

.mega-menu-container .section.is-active > .children {
	display: block;
}

.mega-menu-container .child-link {
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
	min-height: 5.2rem;
	padding: 0.4rem 0;
	font-size: 2rem;
	line-height: 2.6rem;
	font-weight: var(--fontWeightLight);
	color: var(--menu-text);
	opacity: 0.72;
	transition: opacity 200ms ease;
}

.mega-menu-container .child-link:hover {
	opacity: 1;
}

.mega-menu-container .child-link .ico-arrow {
	width: 2rem;
	height: 2rem;
	opacity: 0;
	transform: translateX(-0.4rem);
	transition: opacity 200ms ease, transform 200ms ease;
}

.mega-menu-container .child-link:hover .ico-arrow {
	opacity: 1;
	transform: translateX(0);
}


.mega-menu-container .region-selector {
	position: relative;
	flex-shrink: 0;
	margin-left: auto;
}

.mega-menu-container .region-toggle {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	height: 6.4rem;
	padding: 0 1.2rem;
	font-family: inherit;
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightMedium);
	color: var(--menu-text);
	background: none;
	border: 0;
	cursor: pointer;
	opacity: 1;
	transition: opacity 200ms ease;
}

.mega-menu-container .region-toggle:hover {
	opacity: 1;
}

.mega-menu-container .region-toggle .flag,
.mega-menu-container .region-link .flag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.6rem;
	height: 1.6rem;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
}

.mega-menu-container .region-toggle .flag img,
.mega-menu-container .region-link .flag img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.mega-menu-container .region-toggle .ico-chevron {
	width: 2rem;
	height: 2rem;
	transition: transform 250ms ease;
}

.mega-menu-container .region-selector.is-open .region-toggle .ico-chevron {
	transform: rotate(180deg);
}

.mega-menu-container .region-dropdown {
	position: absolute;
	top: 100%;
	right: 0;
	z-index: 100;
	display: none;
	min-width: 20rem;
	padding: 0.8rem 0;
	background-color: var(--menu-bg);
	border-radius: var(--radius-md);
	box-shadow: var(--shadow-xl);
}

.mega-menu-container .region-selector.is-open .region-dropdown {
	display: block;
}

.mega-menu-container .region-link {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: 1rem 1.6rem;
	font-size: var(--text-sm);
	color: var(--menu-text);
	opacity: 0.82;
	transition: opacity 200ms ease, background-color 200ms ease;
}

.mega-menu-container .region-link:hover {
	opacity: 1;
	background-color: var(--menu-hover);
}


.mega-menu-container a:focus-visible,
.mega-menu-container button:focus-visible {
	outline: 0.2rem solid var(--menu-text);
	outline-offset: 0.2rem;
	border-radius: 0.2rem;
	opacity: 1;
}


.mega-menu-container span.nav-link,
.mega-menu-container span.section-link,
.mega-menu-container span.child-link {
	cursor: default;
}


@media (max-width: 1024px) {
	.mega-menu-container .nav-toggle {
		display: inline-flex;
	}

	.mega-menu-container .nav-bar-inner > .logo {
		margin-right: 0;
	}

	.mega-menu-container .nav-links {
		position: fixed;
		inset: 0;
		z-index: 1001;
		width: 100%;
		height: 100dvh;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		padding: 2rem 2.4rem 4rem;
		overflow-y: auto;
		background-color: var(--menu-bg);
		visibility: hidden;
		transform: translateX(100%);
		transition: transform 280ms ease, visibility 280ms ease;
	}

	.mega-menu-container.menu-open .nav-links {
		visibility: visible;
		transform: translateX(0);
	}

	
	.mega-menu-container .drawer-head {
		position: sticky;
		top: 0;
		z-index: 1;
		display: flex;
		align-items: center;
		justify-content: space-between;
		height: 6.4rem;
		margin-bottom: 1.6rem;
		background-color: var(--menu-bg);
	}

	.mega-menu-container .nav-close {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 4rem;
		height: 4rem;
		padding: 0;
		color: var(--menu-text);
		background: none;
		border: 0;
		cursor: pointer;
	}

	.mega-menu-container .nav-close .ico {
		width: 2.4rem;
		height: 2.4rem;
	}

	.mega-menu-container .links {
		flex: none;
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}

	.mega-menu-container .nav-item {
		display: block;
		width: 100%;
	}

	.mega-menu-container .nav-link {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		height: auto;
		padding: 1.6rem 0;
		font-size: 1.8rem;
		line-height: 2.4rem;
		opacity: 1;
	}

	
	.mega-menu-container.has-open .links .nav-link {
		opacity: 0.45;
	}

	.mega-menu-container.has-open .nav-item.is-open > .nav-link {
		opacity: 1;
	}

	
	.mega-menu-container .dropdown {
		position: static;
		width: auto;
		background: none;
		box-shadow: none;
		display: grid;
		grid-template-rows: 0fr;
		visibility: hidden;
		transition: grid-template-rows 300ms ease, visibility 0s linear 300ms;
	}

	.mega-menu-container .dropdown::before {
		display: none;
	}

	.mega-menu-container .nav-item.is-open > .dropdown {
		
		display: grid;
		grid-template-rows: 1fr;
		visibility: visible;
		transition: grid-template-rows 300ms ease, visibility 0s;
	}

	.mega-menu-container .dropdown-inner {
		max-width: none;
		overflow: hidden; 
		min-height: 0;
		padding: 0 0 0 1.6rem;
	}
	
	.mega-menu-container .nav-item.is-open > .dropdown .dropdown-inner {
		padding-bottom: 0.8rem;
	}

	.mega-menu-container .dropdown-content {
		display: block;
	}

	.mega-menu-container .copy-header {
		display: none;
	}

	.mega-menu-container .menus {
		position: static;
		display: block;
	}

	.mega-menu-container .sections {
		flex: none;
		max-width: none;
		width: 100%;
	}

	.mega-menu-container .section {
		width: 100%;
	}

	.mega-menu-container .section-link {
		justify-content: space-between;
		min-height: 0;
		padding: 1.2rem 0;
		font-size: 1.6rem;
		line-height: 2.2rem;
		letter-spacing: 0;
		opacity: 0.9;
	}

	
	.mega-menu-container .section-link .ico-chevron-right {
		width: 2rem;
		height: 2rem;
		transform: rotate(90deg);
		transition: transform 250ms ease;
	}

	.mega-menu-container .section.is-active > .section-link .ico-chevron-right {
		transform: rotate(-90deg);
	}

	
	.mega-menu-container .section-link__tail .ico {
		display: none;
	}

	.mega-menu-container .section-link > .ico-chevron-right {
		display: block;
	}

	
	.mega-menu-container .section-link .ico-arrow,
	.mega-menu-container .child-link .ico-arrow {
		display: none;
	}

	.mega-menu-container .section .children {
		position: static;
		max-height: none; 
		overflow: visible;
		padding-left: 1.6rem;
		
		display: grid;
		grid-template-rows: 0fr;
		visibility: hidden;
		transition: grid-template-rows 260ms ease, visibility 0s linear 260ms;
	}
	.mega-menu-container .section .children > ul {
		overflow: hidden; 
		min-height: 0;
	}

	.mega-menu-container .section.is-active > .children {
		display: grid; 
		grid-template-rows: 1fr;
		visibility: visible;
		transition: grid-template-rows 260ms ease, visibility 0s;
	}

	.mega-menu-container .child-link {
		min-height: 0;
		padding: 1rem 0;
		font-size: var(--text-sm);
		line-height: var(--leading-sm);
		opacity: 0.85;
	}

	
	.mega-menu-container .region-selector {
		margin-left: 0;
		margin-top: 2.4rem;
		padding-top: 2.4rem;
		border-top: 0.1rem solid var(--menu-hairline);
	}

	.mega-menu-container .region-toggle {
		height: auto;
		padding: 0.8rem 0;
		gap: 0.8rem;
	}

	.mega-menu-container .region-dropdown {
		position: static;
		display: none;
		min-width: 0;
		padding: 0.8rem 0 0;
		background: none;
		box-shadow: none;
		border-radius: 0;
	}

	.mega-menu-container .region-selector.is-open .region-dropdown {
		display: block;
	}

	.mega-menu-container .region-link {
		padding: 1rem 0;
	}
}

@media (max-width: 375px) {
	.mega-menu-container .nav-links {
		padding: 1.6rem 2rem 4rem;
	}
}


@media (prefers-reduced-motion: reduce) {
	.mega-menu-container .nav-links,
	.mega-menu-container .dropdown,
	.mega-menu-container .nav-item.is-open > .dropdown,
	.mega-menu-container .section .children,
	.mega-menu-container .section.is-active > .children,
	.mega-menu-container .section-link .ico-chevron-right {
		transition: none;
	}
}



.form-banner {

}

.form-banner .container {
	gap: 3rem;
	display: grid;
	grid-template-columns: 1fr minmax(auto, 57rem);
}

@media (max-width: 991px) {
	.form-banner .container {
		grid-template-columns: 1fr;
	}
}

.hs-landing-page .form-banner .form {
	padding: 5rem 3rem;
	border-radius: 0.7rem;
	border: 0.1rem solid #E4E4E4;
	background-color: #FFFFFF;
	box-shadow: 0.5rem 0.5rem 2.5rem 0.4rem rgba(22,27,48,0.05);
}

@media (max-width: 991px) {
	.hs-landing-page .form-banner .form h3 br {
        display: none;
	}
}

























.content-banner {

}

.content-banner .container {
	gap: 13rem;
	display: flex;
	align-items: center;
}

@media (max-width: 991px) {
	.content-banner .container {
		gap: 3rem;
	}
}

@media (max-width: 768px) {
	.content-banner .container {
		flex-direction: column-reverse;
	}
}

.content-banner .container.equal {
	gap: 3rem;
}

.content-banner .image {
	width: 100%;
	flex-grow: 1;
	flex-shrink: 0;
	padding-left: 6.5rem;
	max-width: 37rem;
}

@media (max-width: 991px) {
	.content-banner .image {
		padding-left: 0rem;
	}
}

.content-banner.reverse .image {
	padding-left: 0;
	padding-right: 6.5rem;
}

.content-banner .image img {	
	width: 100%;
}

.content-banner .container.equal .image {
	flex-basis: 50%;
	max-width: 100%;
	flex-shrink: 1;
}

.content-banner .content {
	flex-grow: 1;
	flex-shrink: 1;
}

.content-banner .container.equal .content {
	flex-basis: 50%;
	flex-shrink: 1;
}

.content-banner .content .inner-content {
	max-width: 59rem;
}

@media (max-width: 991px) {
	.content-banner .content .inner-content br {
        display: none;
	}
}

.content-banner .content .inner-content *:last-child {
	margin-bottom: 0;
}

.content-banner .content .inner-content.split ul {
	column-count: 2;
	column-gap: 3rem;
}

.content-banner .content .cta-container  {
	padding-top: 3.5rem;
}

.content-banner .content .inner-content .item-list {
	gap: 3rem;
	display: flex;
	flex-direction: column;
}

.content-banner .content .inner-content .item-list .list {
	gap: 1.5rem;
	display: flex;
	align-items: center;
}

.content-banner .content .inner-content .item-list .list .bullet {
	
	content: "";
	height: 4.5rem;
	min-width: 0.4rem;
	max-width: 0.4rem;
	background-color: var(--primaryColour);
}

.content-banner .content .inner-content .item-list .list span {
	display: block;
	padding: 0.8rem 0;
}










.content-banner.reverse .container {
	flex-direction: row-reverse;
}

@media (max-width: 768px) {
	.content-banner.reverse .container {
		flex-direction: column-reverse;
	}	
}






.content-banner.stacked .container {
	display: grid;
	justify-content: center;
}

.content-banner.stacked .container .image {
	grid-row: 1;
	display: flex;
	max-width: 100%;
	align-items: center;
	grid-column: 1 / -1;
	justify-content: center;
}

.content-banner.stacked .container .content {
	grid-row: 1;
	display: flex;
	grid-column: 1 / -1;
	flex-direction: column;
	justify-content: center;
}

.content-banner.stacked .container .content .inner-content {
	width: 100%;
	max-width: 80rem;
	text-align: center;
}

.content-banner.stacked .container .content .cta-container {
	justify-content: center;
}







































.media-container {
	padding: var(--verticalSpacing) 0;
}

.media-container .container {
	gap: 3rem;
	display: grid;
	align-items: center;
	grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 991px) {
	.media-container .container {
		grid-template-columns: repeat(1, 1fr);
	}
}

.media-container .media iframe {
	border-radius: .7rem;
}




























.blog-preview {
	padding: var(--verticalSpacing) 0;
}

.blog-preview .container {
	gap: 3rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 991px) {
	.blog-preview .container {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 480px) {
	.blog-preview .container {
		grid-template-columns: repeat(1, 1fr);
	}
}

.blog-preview .container .post {
	overflow: hidden;
	border-radius: .7rem;
	border: 0.1rem solid #E4E4E4;
	background-color: #FFFFFF;
}

.blog-preview .featured-image {
	margin-bottom: 2rem;
}

.blog-preview .featured-image img {
	width: 100%;
	object-fit: cover;
}

.blog-preview .post-content {
	padding: 0rem 2.5rem 2.5rem;
}

.blog-preview .post-content .tags {
	margin-bottom: 1rem;
}

.blog-preview .post-content .tags,
.blog-preview .post-content .tags a {
	outline: none;
	font-size: 1.6rem;
	font-weight: 600;
	text-decoration: none;

	color: #00A9F3;
}

.blog-preview .post-content .meta {
	margin-bottom: 4rem;
}

.blog-preview .post-content .meta time {
	margin-bottom: 1rem;
	display: inline-block;
}

.blog-preview .post-content .meta .read-time {
	color: #a9a9a9;
	margin-bottom: 1rem;
	display: inline-block;
}



.blog-preview .post.style-2 {
	overflow: hidden;
	border-radius: 1rem;
	background-color: #fff;
}

.blog-preview .post.style-2 .post-content {
	padding: 0 3rem 3rem;
}

.blog-preview .post.style-2 .cta-container {
	justify-content: end;
}





.blog-preview .post.style-3 .featured-image {
	overflow: hidden;
	border-radius: 1rem;
}

.blog-preview .post.style-3 .btn {
	border: none;
	padding: 0;
	align-items: center;
	color: var(--primaryColour);
	background-color: transparent;
}

.blog-preview .post.style-3 .btn:after {
	content: "";
	width: 2rem;
	height: 2rem;
	display: block;
	background-size: 2rem;
	transition: all 250ms ease;
	background-repeat: no-repeat;
	background-position-y: center;
	background-position-x: center;
	background-image: url('https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/chevron-forward-outline.svg');
}




.slider {
	padding: var(--verticalSpacing) 0;
}

.slider.logos .container .swiper-pagination-bullets.swiper-pagination-horizontal {
	--swiper-pagination-bottom: -5rem;
}

.slider .container {
	position: relative;
}

.slider .container .rich-text {
	margin-bottom: 6.5rem;
}

.slider .slide-content {
	align-items: center;
    display: flex;
    gap: 13rem;
}

.slider .slide-content .featured-image {
	flex-grow: 1;
	flex-shrink: 0;
	max-width: 37rem;
	width: 100%;
}

.slider .slide-content .content {
    flex-grow: 0;
    flex-shrink: 1;
}

.slider .slide-content .content *:last-child{
	margin-bottom: 0;
}

.slider .slide-content.reversed {
	flex-direction: row-reverse;
}


.slider.logos {
    
}

.slider.logos .slide-content .featured-image {
	display: flex;
	max-width: 100%;
	justify-content: center;
}











.call-to-action {
	
}

@media (max-width: 480px) {
	.call-to-action .container {
        padding: 0;
	}	
}

.call-to-action .container .inner-wrapper {
	gap: 3rem;
	display: flex;
	min-height: 27.5rem;
	align-items: center;
	padding: 10rem 12rem;
	background-repeat: no-repeat;
	background-color: var(--grey);
	justify-content: space-between;
	background-position-y: top, bottom;
	background-position-x: left, right;
	background-image: url(https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/CTA%20-%20Pattern%20-%20Left.svg), url(https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/CTA%20-%20Pattern%20-%20Right.svg);
}

@media (max-width: 991px) {
	.call-to-action .container .inner-wrapper {
		padding: 11.5rem 3rem;
	}
}

@media (max-width: 480px) {
	.call-to-action .container .inner-wrapper {
		flex-direction: column;
	}
}

.call-to-action .container .inner-wrapper.style-2 {
	background-image: url(https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/CTA%20-%20Blue%20Pattern%20-%20Left.svg), url(https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/CTA%20-%20Blue%20Pattern%20-%20Right.svg);
}

.call-to-action.newsletter .container .inner-wrapper {
	padding: 0;
	align-items: stretch;
}

.call-to-action.newsletter .container .inner-wrapper .content {
	padding: 6rem 5rem;
	max-width: 74rem;
}

.call-to-action.newsletter .container .inner-wrapper .content.newsletter-sign-up {
	display: flex;
	max-width: 100%;
	align-items: center;
	justify-content: space-between;
}

.call-to-action.newsletter .container .inner-wrapper .featured-image img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}

.call-to-action .content {
	width: 100%;
	max-width: 57rem;
}

@media (max-width: 480px) {
	.call-to-action .content {
		text-align: center;
	}
}

.call-to-action .form .hs-form-field {
	margin-bottom: 0;
}

.call-to-action .form input[type=email] {
	height: 6.5rem;
	width: 25.5rem;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	border-top-left-radius: 0.5rem;
	border-bottom-left-radius: 0.5rem;
	border: 0.2rem solid var(--ctaPrimaryColour);
	background-color: #FFFFFF;
}

.call-to-action .form form input[type=submit] {
	width: 15.5rem;
	height: 6.5rem;
	font-weight: 700;
	font-size: 1.4rem;
	background-color: var(--ctaPrimaryColour);
	border-top-right-radius: 0.5rem;
	border-bottom-right-radius: 0.5rem;
}

















.pricing {
	
}

.pricing .container  {
	gap: 3rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 480px) {
	.pricing .container  {
		grid-template-columns: repeat(1, 1fr);
	}
}

.pricing .price-column {
	display: flex;
	border-radius: .7rem;
	flex-direction: column;
	transition: transform 250ms ease;
	background-color: rgba(228,228,228,.6);
}

.pricing .price-column:hover {
	transform: translateY(-1rem);
}

.pricing .price-column .top {
	flex: 1;
	display: flex;
	background: #FFFFFF;
	padding-bottom: 4rem;
	flex-direction: column;
	border: 0.1rem solid #E4E4E4;
	border-radius: 0 0 0.7rem 0.7rem;
	background-position-y: bottom;
	background-position-x: right;
	background-repeat: no-repeat;
	background-size: 27rem;
	border-radius: .7rem;
	box-shadow: 0.5rem 0.5rem 2.5rem 0.4rem rgba(22,27,48,0.05);
	background-image: url('https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/CTA%20-%20Blue%20Pattern%20-%20Right.svg');
}

.pricing .price-column header {
	color: #fff;
	font-weight: 600;
	font-size: 3.0rem;
	letter-spacing: 0;
	line-height: 3.5rem;
	padding: 2.5rem 4rem;
	background-color: #00A9F3;
	border-radius: 0.7rem 0.7rem 0 0;
}

@media (max-width: 991px) {
	.pricing .price-column header {
		padding: 2.5rem 3rem;
	}
}

.pricing .price-column article {
	flex: 1;
	margin-bottom: 4rem;
}

.pricing .price-column .cta-container {
	padding: 0 4rem;
}

@media (max-width: 991px) {
	.pricing .price-column .cta-container {
		padding: 0 2.7rem;
	}	
}

.pricing .price-column .package-details {
	margin-bottom: 4rem;
	padding: 3.5rem 4rem 0;
}

@media (max-width: 991px) {
	.pricing .price-column .package-details {
		padding: 3.5rem 2.7rem 0;
	}
}

.pricing .price-column .pricing-container {
	padding: 0 4rem;
}

@media (max-width: 991px) {
	.pricing .price-column .pricing-container {
		padding: 0 2.7rem;
	}
}

.pricing .price-column .pricing-container .term {
	margin-bottom: 1rem;
}

.pricing .price-column .pricing-container .h1 {
	font-weight: 700;
}


.pricing .price-column .bottom {
	padding: 4rem;
	border-radius: 0.7rem;
}

@media (max-width: 991px) {
	.pricing .price-column .bottom {
		padding: 2.7rem;
	}
}

.pricing .price-column .features {
	gap: 3rem;
	display: flex;
	flex-direction: column;
}

.pricing .price-column .features span {
	gap: 1rem;
	display: flex;
	align-items: center;
}


















.contact-form {
	
}

.contact-form .container {
	max-width: 83rem;
}

























.blog-tags-container {
	margin-bottom: 7.5rem;
}

.blog-tags-container .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.blog-tags-container .tags {
	width: 100%;
	height: 5rem;
	display: flex;
	cursor: pointer;
	padding: 0 2.2rem;
	max-width: 27rem;
    border-radius: 0.7rem;
	position: relative;
	align-items: center;
	background-color: #00A9F3;
	justify-content: space-between;
}

.blog-tags-container .tags:after {
	content: "";
	width: 2rem;
	height: 2rem;
	display: block;
	background-position: center;
	background-repeat: no-repeat;
	transition: transform 250ms ease;
	transform: rotate(-90deg) translateX(0.5rem);
	background-image: url(https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/Arrow%20Down%20-%20White.svg);
}

.blog-tags-container .tags.open:after {
	transform: rotate(90deg) translateX(0.2rem);
}

.blog-tags-container .tags #initial-tag {
	font-size: 1.6rem;
	color: var(--white);
	font-weight: var(--fontWeightBold);
}

.blog-tags-container .tags .list {
	left: 0;
	top: 4.8rem;
	width: 100%;

	display: none;
	overflow: hidden;
	position: absolute;
	border-radius: 0.7rem;
	flex-direction: column;
	border: 0.1rem solid #E4E4E4;
	background-color: var(--white);
}

.blog-tags-container .tags.open .list {
	display: flex;
}

.blog-tags-container .tags .list a {
	font-size: 1.6rem;
	padding: 1.3rem 2rem;
	text-decoration: none;
	color: var(--bodyColour);
}

.blog-tags-container .tags .list a:hover {
	background-color: #E4E4E4;
}












.recent-blogs-container {
	margin-bottom: 0rem;
}

.recent-blogs-container.related {
	padding: 10rem;
}

.recent-blogs-container .rich-text {
	margin-bottom: 6.7rem;
}

.recent-blogs-container .posts {
	gap: 3rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.recent-blogs-container .posts .post {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border-radius: 0.7rem;
	border: 0.1rem solid #E4E4E4;
	background-color: var(--white);
}

.recent-blogs-container .posts .post:nth-child(1) {
	grid-column: 1 / 3;
	grid-row: 1 / 3;
}

.recent-blogs-container .posts .post:nth-child(1) .featured-image {
	max-height: 49.7rem;
}

.recent-blogs-container .posts .post:nth-child(1) .body .summary-container {
	justify-content: space-between;
}

.recent-blogs-container .posts .post:nth-child(1) .body .summary {
	display: flex;
}

.recent-blogs-container .posts.grid .post:nth-child(1) .body .summary {
	display: none;
}

.recent-blogs-container .posts .post:nth-child(1) .body .post-footer {
	display: flex;
	align-items: end;
	justify-content: space-between;
}

.recent-blogs-container .posts.grid .post:nth-child(1) .body .post-footer {
	display: block;
}

.recent-blogs-container .posts .post:nth-child(1) .body .post-footer .written-author {
	margin-bottom: 0;
}

.recent-blogs-container .posts.grid .post:nth-child(1) .body .post-footer .written-author {
	margin-bottom: 2rem;
}

.recent-blogs-container .posts .post:nth-child(2) {
	grid-column: 3 / -1;
}

.recent-blogs-container .posts .post:nth-child(3) {
	grid-column: 3 / -1;
}

.recent-blogs-container .posts.grid .post:nth-child(1) {
	grid-column: unset;
	grid-row: unset;
}

.recent-blogs-container .posts.grid .post:nth-child(2) {
	grid-column: unset;
}

.recent-blogs-container .posts.grid .post:nth-child(3) {
	grid-column: unset;
}

.recent-blogs-container .posts .post .post-container {
	flex: 1;
	display: flex;
	flex-direction: column;
}

.recent-blogs-container .posts .post .featured-image {
	flex: 1;
	display: flex;
	overflow: hidden;
	max-height: 24rem;
	min-height: 24rem;
	align-items: center;
	justify-content: center;
}

.recent-blogs-container .posts .post .featured-image a {
	display: block;
	width: 100%;
	height: 100%;
}

.recent-blogs-container .posts .post .featured-image img {
	display: block;
	height: 100%;
	width: 100%;
	object-fit: cover;
	object-position: center;
}

.recent-blogs-container .posts .post .body {
	flex: 1;
	display: flex;
	padding: 2.5rem;
	flex-direction: column;
}

.recent-blogs-container .posts .post .body .tag {
	font-size: 1.6rem;
	color: #00A9F3;
	letter-spacing: 0;
	line-height: 1.6rem;
	font-weight: 600;
	display: inline-block;
	text-decoration: none;
	margin-bottom: 2rem;
}

.recent-blogs-container .posts .post .body .blog-post-title {
	color: #161B30;
	letter-spacing: 0;
	line-height: 3rem;
	font-weight: 700;
}

.recent-blogs-container .posts .post .body .blog-post-title a {
	color: inherit;
	text-decoration: none;
}

.recent-blogs-container .posts .post .body .summary-container {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: end;
}

.recent-blogs-container .posts .post .body .summary {
	display: none;
	font-size: 1.6rem;
	color: #161B30;
	letter-spacing: 0;
	line-height: 2.5rem;
	font-weight: 400;
}

.recent-blogs-container .posts .post .body .summary-container .author {
	font-size: 1.6rem;
	color: #161B30;
	letter-spacing: 0;
	line-height: 2.5rem;
	font-weight: 600;
}















.recent-blogs-container .pagination {
    display: flex;
	gap: 0.5rem;
	justify-content: center;
	align-items: center;
	padding-top: 9rem;
}

.recent-blogs-container .pagination .page-number {
	color: #141517;
	font-size: 1.6rem;
	letter-spacing: 0;
	text-align: center;
	line-height: 2.5rem;
	font-weight: 400;
	text-decoration: none;
	padding: 0.5rem 1rem;
}

.recent-blogs-container .pagination .page-number.active {
    color: #00A9F3;
	font-weight: 700;
}

.recent-blogs-container .pagination .previous-posts {
	margin-right: 1rem;
}

.recent-blogs-container .pagination .next-posts {
	margin-left: 1rem;
}































.testimonial-slider {
	padding: var(--verticalSpacing) 0;
	color: var(--white);
}

.testimonial-slider__heading {
	margin-bottom: 6rem;
	text-align: center;
}


.testimonial-slider__card {
	position: relative;
	overflow: hidden;
	border-radius: var(--radius-base);
	border: 0.1rem solid rgba(255, 255, 255, 0.08);
	background-color: rgba(255, 255, 255, 0.05);
	-webkit-backdrop-filter: blur(2.5rem);
	backdrop-filter: blur(2.5rem);
}


.testimonial-slider.full .testimonial-slider__card {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	border: 0;
	border-radius: 0;
	background-color: transparent;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
}

.testimonial-slider.full .testimonial {
	max-width: 106rem;
	margin-inline: auto;
}


.testimonial-slider.full .ts-glow,
.testimonial-slider.full .testimonial-slider__noise {
	display: none;
}

.testimonial-slider.full .testimonial-slider__bg {
	background:
		radial-gradient(100rem 78rem at 6% 122%, rgba(1, 142, 154, 0.50), transparent 58%),
		radial-gradient(74rem 62rem at 24% 120%, rgba(38, 139, 66, 0.38), transparent 56%),
		radial-gradient(58rem 50rem at -2% 104%, rgba(161, 191, 36, 0.22), transparent 52%),
		radial-gradient(120rem 84rem at 82% 128%, rgba(25, 131, 194, 0.20), transparent 64%);
}


.testimonial-slider__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}

.testimonial-slider .ts-glow {
	position: absolute;
	display: block;
	border-radius: 50%;
}


.testimonial-slider .ts-glow--tl-azure { left: -38rem; top: -58rem; width: 120rem; height: 120rem; background: radial-gradient(circle, rgba(25, 131, 194, 0.45) 0%, rgba(25, 131, 194, 0) 60%); }
.testimonial-slider .ts-glow--tl-teal  { left: -8rem;  top: -30rem; width: 80rem;  height: 80rem;  background: radial-gradient(circle, rgba(1, 142, 154, 0.5) 0%, rgba(1, 142, 154, 0) 62%); }
.testimonial-slider .ts-glow--br-green { right: -10rem; bottom: -34rem; width: 80rem; height: 80rem; background: radial-gradient(circle, rgba(38, 139, 66, 0.45) 0%, rgba(38, 139, 66, 0) 62%); }
.testimonial-slider .ts-glow--br-teal  { right: -42rem; bottom: -58rem; width: 120rem; height: 120rem; background: radial-gradient(circle, rgba(1, 142, 154, 0.45) 0%, rgba(1, 142, 154, 0) 60%); }

.testimonial-slider__noise {
	position: absolute;
	inset: 0;
	mix-blend-mode: multiply;
	opacity: 0.18;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
	background-size: 16rem 16rem;
}



.testimonial-slider .testimonial-swiper {
	position: relative;
	z-index: 1;
	width: 100%;
	min-width: 0;
	clip-path: inset(0 1px 0 0);
}

.testimonial-slider .testimonial-swiper .swiper-slide {
	min-width: 0;
}

.testimonial-slider .swiper-slide {
	height: auto;
	display: flex;
	box-sizing: border-box;
	padding: 9rem 16.6666%; 
}

@media (max-width: 64rem) { 
	.testimonial-slider .swiper-slide { padding: 7rem 8%; }
}

@media (max-width: 48rem) { 
	.testimonial-slider .swiper-slide { padding: 5rem 2.4rem; }
}

.testimonial {
	width: 100%;
	margin: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 6.4rem;
}

@media (max-width: 48rem) {
	.testimonial { gap: 4rem; }
}

.testimonial__mark {
	display: block;
	width: 6.2rem;
	height: auto;
	flex-shrink: 0;
	transform: rotate(180deg); 
}

.testimonial__quote {
	margin: 0;
	font-style: italic;
}

.testimonial__quote p {
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	font-weight: var(--fontWeightLight);
	font-style: italic;
	color: var(--foundation-200);
}

.testimonial__profile {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1.2rem;
}

.testimonial__photo {
	width: 5.6rem;
	height: 5.6rem;
	flex-shrink: 0;
	overflow: hidden;
	border-radius: var(--radius-max);
	background-color: var(--white);
	border: 0.1rem solid rgba(255, 255, 255, 0.15);
}

.testimonial__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.testimonial__photo-link {
	display: block;
	width: 100%;
	height: 100%;
	transition: opacity 0.2s ease;
}
.testimonial__photo-link:hover,
.testimonial__photo-link:focus-visible {
	opacity: 0.82;
}

.testimonial__person {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4rem;
}

.testimonial__name {
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.testimonial__role {
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	color: var(--foundation-400);
}

.testimonial-slider__pagination {
	position: relative;
	margin-top: 3.2rem;
	text-align: center;
}

.testimonial-slider .swiper-pagination-bullet {
	background-color: var(--foundation-400);
	opacity: 0.4;
}

.testimonial-slider .swiper-pagination-bullet-active {
	background-color: var(--signal-teal-600);
	opacity: 1;
}














.feature-list {
	position: relative;
	color: var(--white);
}

.feature-list .container {
	position: relative;
	z-index: 1;
}

.feature-list__inner {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	column-gap: 2.4rem;
	align-items: start;
}

.feature-list__headline {
	grid-column: 1 / span 6;
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	position: sticky;
	top: 12rem; 
}

.feature-list__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-weight: var(--fontWeightRegular);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
	color: var(--text-accent);
}

.feature-list__heading h2,
.feature-list__heading .h2,
.feature-list__heading h1,
.feature-list__heading p {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.feature-list__heading strong {
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.feature-list__cards {
	grid-column: 7 / span 5;
	display: flex;
	flex-direction: column;
	gap: 7.2rem;
	padding-top: 5.6rem;
	max-width: 52rem; 
}

.feature-list__card-title,
.feature-list__card-text {
	overflow-wrap: break-word;
}

.feature-list__card {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

.feature-list__icon {
	display: block;
	width: 3.2rem;
	height: 3.2rem;
}

.feature-list__icon img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: left center;
}

.feature-list__copy {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.feature-list__card-title {
	margin: 0;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.feature-list__card-text p {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	
	color: var(--foundation-400);
}


@media (max-width: 64rem) { 
	.feature-list__inner {
		display: flex;
		flex-direction: column;
		gap: 4.8rem;
	}
	.feature-list__headline {
		position: static;
		top: auto;
	}
	.feature-list__cards {
		padding-top: 0;
		gap: 5.6rem;
		max-width: none; 
	}
}

@media (max-width: 48rem) { 
	.feature-list__cards { gap: 4.8rem; }
	
	.feature-list__heading h2,
	.feature-list__heading .h2,
	.feature-list__heading h1,
	.feature-list__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
}


.customer-stories {
	position: relative;
	color: var(--white);
}

.customer-stories .container {
	position: relative;
	z-index: 1;
}

.customer-stories__inner {
	display: flex;
	flex-direction: column;
	gap: 8rem;
}


.customer-stories__head {
	display: flex;
	align-items: flex-end;
	gap: 2.4rem;
}

.customer-stories__headline {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.customer-stories__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-weight: var(--fontWeightRegular);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
	color: var(--text-accent);
}

.customer-stories__heading h2,
.customer-stories__heading .h2,
.customer-stories__heading p {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.customer-stories__heading strong {
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.customer-stories__cta {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
	padding: 0.9rem 1.2rem 0.9rem 2rem;
	border-radius: var(--radius-max);
	background-color: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	-webkit-backdrop-filter: blur(2rem);
	backdrop-filter: blur(2rem);
	color: var(--white);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	white-space: nowrap;
	transition: background-color 0.2s ease;
}

.customer-stories__cta:hover {
	background-color: rgba(255, 255, 255, 0.1);
}

.customer-stories__cta .customer-stories__arrow {
	width: 1.2rem;
	height: 1.2rem;
	color: var(--white);
}

.customer-stories__cta:hover .customer-stories__arrow {
	transform: translateX(0.3rem);
}


.customer-stories__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2.4rem;
	align-items: start;
}

.customer-stories__card {
	grid-column: span 1;
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.customer-stories__card--featured {
	grid-column: span 2;
}

.customer-stories__media {
	position: relative;
	overflow: hidden;
	border-radius: 0.8rem;
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	aspect-ratio: 302 / 403;
	transition: box-shadow 0.3s ease, border-color 0.3s ease;
}


.customer-stories__card:hover .customer-stories__media,
.customer-stories__card:focus-within .customer-stories__media {
	border-color: rgba(255, 255, 255, 0.16);
	box-shadow: 0 0 8rem rgba(1, 142, 154, 0.2);
}

.customer-stories__card--featured .customer-stories__media {
	aspect-ratio: 628 / 403;
}

.customer-stories__photo {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s cubic-bezier(0.38, 0.21, 0, 0.92);
}

.customer-stories__card:hover .customer-stories__photo,
.customer-stories__card:focus-within .customer-stories__photo {
	transform: scale(1.05);
}
@media (prefers-reduced-motion: reduce) {
	.customer-stories__photo { transition: none; }
	.customer-stories__card:hover .customer-stories__photo,
	.customer-stories__card:focus-within .customer-stories__photo { transform: none; }
}

.customer-stories__shade {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 50%;
	background: linear-gradient(to bottom, rgba(19, 25, 45, 0), rgba(19, 25, 45, 0.6));
	pointer-events: none;
}

.customer-stories__logo {
	position: absolute;
	left: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	padding: 2rem;
}


.customer-stories__medialink {
	position: absolute;
	inset: 0;
	z-index: 1;
}

.customer-stories__logo img {
	display: block;
	height: auto; 
	max-width: 100%;
}

.customer-stories__copy {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

.customer-stories__title {
	margin: 0;
	max-width: 35rem;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.customer-stories__link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	color: var(--foundation-300); 
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightMedium);
	white-space: nowrap;
}

.customer-stories__link .customer-stories__arrow {
	width: 1.08rem;
	height: 1.08rem;
	color: #b4cc50; 
	transition: transform 0.2s ease;
}

.customer-stories__link:hover .customer-stories__arrow {
	transform: translateX(0.3rem);
}

.customer-stories__arrow {
	display: block;
	flex-shrink: 0;
	transition: transform 0.2s ease;
}


@media (max-width: 64rem) { 
	.customer-stories__grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.customer-stories__card--featured {
		grid-column: span 2;
	}
	.customer-stories__card--featured .customer-stories__media {
		aspect-ratio: 16 / 7;
	}
}


@media (max-width: 48rem) { 
	.customer-stories__inner {
		gap: 4.8rem;
	}
	.customer-stories__head {
		display: contents;
	}
	.customer-stories__headline {
		flex: none; 
		width: 100%; 
	}
	.customer-stories__heading h2,
	.customer-stories__heading .h2,
	.customer-stories__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	.customer-stories__tagline {
		font-size: var(--tagline-xs);
		line-height: var(--leading-tagline-xs);
		letter-spacing: var(--tracking-tagline-xs);
	}
	.customer-stories__cta {
		order: 1; 
		align-self: stretch; 
		justify-content: center;
		padding: 1.2rem 2rem;
	}
	.customer-stories__grid {
		grid-template-columns: 1fr;
		gap: 4.8rem; 
		order: 0;
	}
	.customer-stories__card,
	.customer-stories__card--featured {
		grid-column: span 1;
	}
	.customer-stories__media,
	.customer-stories__card--featured .customer-stories__media {
		aspect-ratio: 16 / 10;
	}
}


.customer-stories.equal .customer-stories__card,
.customer-stories.equal .customer-stories__card--featured {
	grid-column: span 1;
}
.customer-stories.equal .customer-stories__media,
.customer-stories.equal .customer-stories__card--featured .customer-stories__media {
	aspect-ratio: 302 / 403;
}

.customer-stories.equal .customer-stories__heading h2,
.customer-stories.equal .customer-stories__heading .h2,
.customer-stories.equal .customer-stories__heading p {
	color: var(--white);
}

@media (max-width: 64rem) { 
	.customer-stories.equal .customer-stories__grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.customer-stories.equal .customer-stories__card--featured {
		grid-column: span 1;
	}
	.customer-stories.equal .customer-stories__card--featured .customer-stories__media {
		aspect-ratio: 302 / 403;
	}
}

@media (max-width: 48rem) { 
	.customer-stories.equal .customer-stories__grid {
		display: flex;
		flex-wrap: nowrap;
		grid-template-columns: none;
		gap: 2.4rem;
		min-width: 0;
		margin: 0 -2rem; 
		padding: 0 2rem;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-padding-left: 2rem;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.customer-stories.equal .customer-stories__grid::-webkit-scrollbar {
		display: none;
	}
	.customer-stories.equal .customer-stories__card,
	.customer-stories.equal .customer-stories__card--featured {
		flex: 0 0 auto;
		width: 82%; 
		scroll-snap-align: start;
	}
	.customer-stories.equal .customer-stories__media,
	.customer-stories.equal .customer-stories__card--featured .customer-stories__media {
		aspect-ratio: 302 / 403; 
	}
}


.partners {
	position: relative;
	color: var(--white);
}

.partners .container {
	position: relative;
	z-index: 1;
}

.partners__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 7.7rem; 
}

.partners__headline {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2.4rem;
	max-width: 72rem;
	text-align: center;
}

.partners__text {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.partners__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-weight: var(--fontWeightRegular);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
	color: var(--text-accent);
}

.partners__heading h2,
.partners__heading .h2,
.partners__heading p {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.partners__heading strong {
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.partners__intro p {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400); 
}


.partners__grid {
	width: 100%;
	border: 0.1rem solid #272e47;
	border-radius: 0.8rem;
	overflow: hidden;
}


.partners__grid--placed {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-auto-rows: minmax(12rem, auto);
}
.partners__grid--placed .partners__cell:nth-child(6n) {
	border-right: 0; 
}
.partners__grid--placed .partners__cell:nth-last-child(-n+6) {
	border-bottom: 0; 
}


.partners__grid--stacked {
	display: none;
	grid-template-columns: repeat(2, 1fr);
	grid-auto-rows: minmax(10rem, auto);
}
.partners__grid--stacked .partners__cell:nth-child(2n) {
	border-right: 0; 
}
.partners__grid--stacked .partners__cell:nth-last-child(-n+2) {
	border-bottom: 0; 
}

.partners__grid--stacked .partners__cell:last-child:nth-child(odd) {
	grid-column: 1 / -1;
	border-right: 0;
}

.partners__grid--stacked:has(.partners__cell:last-child:nth-child(odd)) .partners__cell:nth-last-child(2) {
	border-bottom: 0.1rem solid #272e47;
}

.partners__cell {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0; 
	padding: 2rem;
	border-right: 0.1rem solid #272e47;
	border-bottom: 0.1rem solid #272e47;
}

.partners__logo {
	display: block;
	width: var(--pw); 
	max-width: 100%;
	max-height: 100%;
}


.partners__grid--cycling {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-auto-rows: 12rem;
}
.partners__col {
	width: 100%;
	height: 12rem;
	min-width: 0;
	overflow: hidden; 
	border-right: 0.1rem solid #272e47;
}
.partners__grid--cycling .partners__col:nth-child(6n) {
	border-right: 0; 
}
.partners__slot {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 12rem;
	padding: 2rem;
	min-width: 0;
}


@media (max-width: 48rem) { 
	.partners__inner {
		gap: 6rem;
	}
	.partners__headline {
		gap: 1.2rem;
	}
	.partners__text {
		gap: 1.2rem;
	}
	.partners__heading h2,
	.partners__heading .h2,
	.partners__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	.partners__tagline {
		font-size: var(--tagline-xs);
		line-height: var(--leading-tagline-xs);
		letter-spacing: var(--tracking-tagline-xs);
	}
	.partners__grid--placed {
		display: none;
	}
	.partners__grid--stacked {
		display: grid;
	}
	.partners__cell {
		padding: 1.6rem;
	}
	
	.partners__grid--cycling {
		grid-template-columns: repeat(3, 1fr);
	}
	.partners__grid--cycling .partners__col:nth-child(6n) {
		border-right: 0.1rem solid #272e47; 
	}
	.partners__grid--cycling .partners__col:nth-child(3n) {
		border-right: 0; 
	}
	.partners__grid--cycling .partners__col:nth-child(-n+3) {
		border-bottom: 0.1rem solid #272e47; 
	}
}

.section-intro {

}

.section-intro .container {
	max-width: 76.8rem;
}





















.timeline {
	
}

.timeline .thumbs {
	width: 100%;
	max-width: 97rem;
}

.timeline .thumbs .swiper-button-next,
.timeline .thumbs .swiper-button-prev {
	top: unset;
	bottom: 2rem;
	margin-top: 0;
}

@media (max-width: 991px) {
	.timeline .thumbs .swiper-button-next,
	.timeline .thumbs .swiper-button-prev {
		display: none;
	}
}

.timeline .thumbs .swiper-button-next:after,
.timeline .thumbs .swiper-button-prev:after {
	display: none;
}

.timeline .thumbs .swiper-button-next.swiper-button-disabled,
.timeline .thumbs .swiper-button-prev.swiper-button-disabled {
	pointer-events: unset;
	cursor: pointer;
    opacity: 1;
}

.timeline .thumbs:after {
	content: "";
	width: 100%;
	max-width: 80rem;
	height: 0.2rem;
	bottom: 4rem;
	left: 0;
	right: 0;
	margin: auto;
	display: block;
	position: absolute;
	background-color: #141517;
}

@media (max-width: 991px) {
	.timeline .thumbs:after {
		max-width: 64.5rem;
	}
}

.timeline .thumbs .swiper-slide {
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
}

.timeline .thumbs .swiper-slide .text {
	width: 100%;
	text-align: center;
	margin-bottom: 4rem;
}

@media (max-width: 991px) {
	.timeline .thumbs .swiper-slide .text {
        font-size: .888rem;
	}
}


.timeline .thumbs .swiper-slide:after {
	content: "";
	display: block;
	width: 8rem;
	height: 8rem;
	max-width: 8rem;
	border-radius: 50%;
	background-color: #00A9F3;
}

@media (max-width: 991px) {
	.timeline .thumbs .swiper-slide:after {
		width: 3rem;
		height: 3rem;
		max-width: 3rem;
		top: -2.5rem;
		position: relative;
	}
}

.timeline .thumbs .swiper-slide.swiper-slide-thumb-active:after {
	background-color: #141517;
}

.timeline .content-slider .swiper-slide {
	padding: 6.5rem 10rem 3rem;
}

@media (max-width: 991px) {
	.timeline .content-slider .swiper-slide {
		padding: 6.5rem 2.5rem 3rem;
	}	
}

.timeline .swiper-slide .card {
	display: flex;
	align-items: center;
	border-radius: 0.7rem;
	background-color: #FFFFFF;
	border: 0.1rem solid #E4E4E4;
	padding: 4rem 4rem 4rem 5.5rem;
	box-shadow: .5rem .5rem 2.5rem .4rem rgba(22,27,48,0.05);
}

@media (max-width: 480px) {
	.timeline .swiper-slide .card {
		gap: 3rem;
		flex-direction: column;
		padding: 3rem 3rem 3rem;
	}
}

.timeline .swiper-slide .card .featured-image {
	width: 100%;
	max-width: 36rem;
	overflow: hidden;
	border-radius: 0.7rem;
}


















.stats {
	position: relative;
	color: var(--white);
	
}

.stats .container {
	position: relative;
	z-index: 1;
}

.stats__inner {
	display: flex;
	flex-direction: column;
	gap: 12rem;
}


.stats__headline {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	max-width: 52rem;
}

.stats__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-weight: var(--fontWeightRegular);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
	color: var(--text-accent);
}

.stats__heading {
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	font-weight: var(--fontWeightMedium);
	letter-spacing: var(--tracking-4xl);
	color: var(--foundation-400);
}

.stats__heading h1,
.stats__heading h2,
.stats__heading h3,
.stats__heading p {
	margin: 0;
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	color: inherit;
}


.stats__heading strong,
.stats__heading b {
	font-weight: inherit;
	color: var(--white);
}


.stats__intro {
	margin-top: 2.4rem;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}
.stats__intro p:last-child { margin-bottom: 0; }


.stats__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 2.4rem;
	row-gap: 12rem;
}

.stats__stat {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

.stats__number {
	margin: 0;
	font-size: var(--text-6xl);
	line-height: var(--leading-6xl);
	font-weight: var(--fontWeightLight);
	letter-spacing: var(--tracking-6xl);
	color: var(--white);
	
	font-variant-numeric: tabular-nums;
}

.stats__label {
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400);
}

.stats__label p {
	margin: 0;
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	color: inherit;
}


.stats__detail {
	margin-top: 1.2rem;
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-500);
}

.stats__detail ul,
.stats__detail ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

.stats__detail li,
.stats__detail p {
	margin: 0 0 0.4rem;
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	color: inherit;
}

.stats__detail li:last-child,
.stats__detail p:last-child {
	margin-bottom: 0;
}


.stats__label strong,
.stats__label b {
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


@media (max-width: 64rem) {
	.stats__inner {
		gap: 8rem;
	}
	.stats__headline {
		max-width: none;
	}
	.stats__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 8rem;
	}
}


@media (max-width: 48rem) {
	.stats__inner {
		gap: 6.4rem;
	}
	.stats__headline {
		gap: 1.2rem;
	}
	.stats__tagline {
		font-size: var(--tagline-xs);
		line-height: var(--leading-tagline-xs);
		letter-spacing: var(--tracking-tagline-xs);
	}
	.stats__heading {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
		
		color: var(--white);
	}
	.stats__grid {
		column-gap: 1.6rem;
		row-gap: 6.4rem;
	}
	.stats__stat {
		gap: 1.2rem;
	}
	.stats__label {
		font-size: var(--text-sm);
		line-height: var(--leading-sm);
	}
}











.cards-grid {
	
}

.cards-grid .rich-text-editor {
	grid-column: 1 / -1;
	margin-bottom: 0.5rem;
}

.cards-grid .card .cta-container {
	padding-top: 5rem;
}

.cards-grid .container {
	gap: 3rem;
}

.cards-grid.three-column .container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 991px) {
	.cards-grid.three-column .container {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 480px) {
	.cards-grid.three-column .container {
		grid-template-columns: repeat(1, 1fr);
	}
}

.cards-grid.two-column .container {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 480px) {
	.cards-grid.two-column .container {
		grid-template-columns: repeat(1, 1fr);
	}
}

.cards-grid.style-3 .container {
	row-gap: 6rem;
}

.cards-grid .card {
	display: flex;
	padding: 4rem 4rem;
	flex-direction: column;
	background-position-x: right;
	background-repeat: no-repeat;
	background-position-y: bottom;
	transition: background-color 250ms ease;
}

.cards-grid.style-2 .card {
	border: none;
	padding: 0rem 0;
	box-shadow: none;
	background-color: transparent;
}

.cards-grid .card:hover {
	background-color: #00A9F3;
	border: 0.1rem solid transparent;
	box-shadow: 0.5rem 0.5rem 2.5rem 0.4rem rgba(0,169,243,0.25);
	background-image: url('https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/Service%20-%20Blue%20-%20Pattern%20%281%29.svg');
}

.cards-grid.style-2 .card:hover {
	border: none;
	box-shadow: none;
	background-image: none;
	background-color: transparent;
}

.cards-grid.style-3 .card {
	gap: 2.3rem;
	padding: 0;
	display: grid;
	box-shadow: none;
	border: none;
	background-color: transparent;
	grid-template-columns: 8rem 1fr;
}

.cards-grid.style-3 .card .card-body {
	margin-bottom: 0;
}

.cards-grid.style-3 .card:hover {
	background-image: none;
}

.cards-grid.style-3 .card:hover .card-body > * {
	color: inherit;
}


.cards-grid.style-4 .card {
	background-size: 26.0rem;
	background-image: url('https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/CTA%20-%20Blue%20Pattern%20-%20Right.svg');
}


.cards-grid .card .icon {
	margin-bottom: 3.5rem;
}

.cards-grid .card .icon img.hover-icon {
	display: none;
}

.cards-grid .card:hover .icon img {
	display: none;
}

.cards-grid .card:hover .icon img.hover-icon {
	display: inline-block;
}

.cards-grid.style-2 .card .icon {
	margin-bottom: 4.5rem;
}

.cards-grid .card .card-body {
	flex: 1;

}

.cards-grid.style-2 .card .card-body {
	margin: 0;
}

.cards-grid .card:hover .card-body > * {
	color: var(--white);
}

.cards-grid.style-2 .card:hover .card-body > * {
	color: inherit;
}

.cards-grid .card:hover .btn.link {
	color: var(--white);
}

.cards-grid .card:hover .btn.link:before {
	background-color: var(--white);
}

.cards-grid .card:hover .btn.link:after {
	content: "";
	width: 1rem;
	height: 1rem;
	display: block;
	background-repeat: no-repeat;
	background-image: url('https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/Learn%20More%20Arrow%20-%20White.svg');
}












.icon-columns {
	
}

.icon-columns .container {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 480px) {
	.icon-columns .container {
		gap: 3rem;
		grid-template-columns: repeat(2, 1fr);
	}
}

.icon-columns .column {
	display: flex;
	flex-direction: column;
	align-items: center;

}

.icon-columns .column .icon {
	margin-bottom: 2.5rem;
}











.teams {
		
}

.teams .teams-filters {
	gap: 3rem;
	display: flex;
	margin-bottom: 6.5rem;
	justify-content: center;
}

@media (max-width: 991px) {
	.teams .teams-filters {
		overflow-x: scroll;
		justify-content: start;
	}
}

.teams .members {
	gap: 2rem;
    display: grid;
	grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 991px) {
	.teams .members {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 480px) {
	.teams .members {
		grid-template-columns: repeat(1, 1fr);
	}
}

.teams .members .member {
	padding: 1.5rem;
	cursor: pointer;
    border-radius: 2rem;
	border: 0.1rem solid #f7f7f7;
	transition: background-color 250ms ease;
}

.teams .members .description {
	grid-column: 1 / -1;
    border-radius: 0.7rem;
	padding: 5.5rem 7rem;
	background-color: #E4E4E4;
	position: relative;
}

.teams .members .description .close {
	top: 2rem;
	right: 2rem;
	width: 3rem;
	height: 3rem;
	border: none;
	z-index: 1001;
	outline: none;
	cursor: pointer;
	position: absolute;
	background-color: transparent;
	background-image: url(https://20155276.fs1.hubspotusercontent-na1.net/hubfs/20155276/Close%20Button.svg);
}

.teams .members .member:hover,
.teams .members .member.active {
	background-color: #E4E4E4;
}

.teams .members .member .member-image {
	height: 31.6rem;
	overflow: hidden;
	border-radius: 0.7rem;
}

.teams .members .member .member-image img {
	width: 100%;
}

.teams .members .member .member-info {
	display: flex;
	padding: 1.5rem 0.5rem;
	justify-content: space-between;
}

.teams .members .member .member-info span {
	display: block;
}

.teams .members .member .member-info .chevron {
	width: max-content;
	display: inline-block;
	margin-top: 1rem;
	transition: transform 250ms ease;
}

.teams .members .member.active .member-info .chevron {
	transform: rotate(180deg);
}

.teams .members .member .member-info .title {
	font-size: 2.2rem;
	color: #141517;
	letter-spacing: 0;
	font-weight: 700;
	margin-bottom: 0;
}

















.blog-featured-image {
	padding-bottom: 11rem;
}

.blog-featured-image img {
	border-radius: 0.7rem;
}


.blog-post-content .container {
	display: grid;
	grid-template-columns: minmax(auto, 26.5rem) minmax(auto, 80rem) 1fr;
}

.blog-post-content .anchors ul {
	gap: 0.5rem;
	padding: 0;
	display: flex;
	align-items: start;
	flex-direction: column;
}

.blog-post-content .anchors ul a {
	gap: 1.2rem;
	display: inline-flex;
	align-items: center;
	opacity: 0.4;
	font-size: 1.4rem;
	color: #141517;
	letter-spacing: 0;
	line-height: 2.5rem;
	font-weight: 600;
	text-decoration: none;
}

.blog-post-content .anchors ul a:before {
	content: '';
	width: 0.8rem;
	height: 0.8rem;
	display: block;
	border-radius: 50%;
	background-color: #141517;
}

.blog-post-content .anchors ul a:hover:before {
	content: '';
	width: 1.2rem;
	height: 1.2rem;
	display: block;
	border-radius: 50%;
	background-color: #00A9F3;
}

.blog-post-content .anchors ul a:hover,
.blog-post-content .anchors ul a.active {
	opacity: 1;
	font-size: 1.6rem;
}

.blog-post-content .categories {
	display: flex;
	margin-bottom: 1rem;
}

.blog-post-content .categories .category {
	font-size: 1.6rem;
	color: #00A9F3;
	letter-spacing: 0;
	line-height: 3.253rem;
	text-decoration: none;
	font-weight: var(--fontWeightSemiBold);
}

.blog-post-content .content {
	padding-bottom: 5rem;
}

.blog-post-content .content h1 {
	font-size: 5.2rem;
	color: #141517;
	margin-bottom: 1.5rem;
	letter-spacing: 0;
	line-height: 6.5rem;
}

.blog-post-content .blog-details {
	gap: 1rem;
	display: flex;
	align-items: center;
	margin-bottom: 6.5rem;
}

.blog-post-content .blog-details a,
.blog-post-content .blog-details > span,
.blog-post-content .blog-details time {
	color: #141517;
	font-size: 2.0rem;
	text-decoration: none;
	font-weight: var(--fontWeightSemiBold);
}


.blog-post-content .blog-share {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.blog-post-content .blog-share .line {
	width: 0.2rem;
	height: 3.5rem;
	margin-top: 1.8rem;
	margin-bottom: 2rem;
	display: inline-flex;
	background-color: #00A9F3;
}

.blog-post-content .blog-share a {
	display: inline-flex;
	margin-bottom: 1.4rem;
}

.blog-post-content .blog-share a:last-child {
	margin-bottom: 0;
}


.blog-post-content .blog-summary {
	padding: 7rem;
	margin-top: 5rem;
	margin-bottom: 6.5rem;
}






.body-container-wrapper {
	overflow-x: clip;
}

.industries-page,
.customer-story-page,
.customer-stories-page,
.what-we-do-page,
.leadership-page,
.about-page,
.capabilities-page,
.plain-page,
.contact-page,
.thank-you-page,
.error-404-page,
.error-500-page {
	background-color: var(--foundation-950);
}


.customer-story-page section,
.customer-stories-page section,
.what-we-do-page section,
.leadership-page section,
.about-page section,
.capabilities-page section,
.plain-page section,
.contact-page section,
.thank-you-page section,
.error-404-page section,
.error-500-page section {
	background-color: transparent !important;
}



.hero {
	position: relative;
	color: var(--white);
	background-color: var(--foundation-950);
	
}


.hero .container {
	position: relative;
	z-index: 1;
}


.hero__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
}


.hero__bg-inner {
	position: absolute;
	inset: 0;
}
html.reveal-ready .hero .hero__bg-inner[data-reveal] {
	transform: scale(1.2);
	transform-origin: center;
}
html.reveal-ready .hero .hero__bg-inner[data-reveal].is-revealed {
	transform: scale(1);
}

.hero__bg-img {
	position: absolute;
	top: -6rem;
	left: -6rem;
	width: calc(100% + 12rem);
	height: calc(100% + 12rem);
	max-width: none;  
	max-height: none;
	object-fit: cover;
	object-position: center;
	
}

.hero__bg-gradient {
	position: absolute;
	inset: 0;
	
	background: linear-gradient(180deg,
		transparent 0%,
		color-mix(in srgb, var(--foundation-950) 55%, transparent) 50%,
		color-mix(in srgb, var(--foundation-950) 88%, transparent) 70%,
		var(--foundation-950) 88%);
}




.hero.style-2 .hero__bg {
	background: var(--foundation-950);
}


.leadership-page .hero.style-2 .hero__bg {
	background:
		radial-gradient(40% 45% at 20% 46%, color-mix(in srgb, var(--codebase-green-600) 30%, transparent), transparent 62%),
		radial-gradient(42% 55% at 92% 46%, color-mix(in srgb, var(--signal-teal-600) 30%, transparent), transparent 60%),
		radial-gradient(45% 45% at 48% 82%, color-mix(in srgb, var(--azure-600) 28%, transparent), transparent 62%),
		radial-gradient(30% 35% at 4% 4%, color-mix(in srgb, var(--azure-600) 16%, transparent), transparent 60%);
}


.hero.style-2 .hero__bg-art {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center top;
}



.hero.style-2 .hero__bg::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 45%;
	background: linear-gradient(to bottom, transparent, var(--foundation-950));
	pointer-events: none;
}

.hero.style-2 .hero__customers {
	display: none;
}


.hero.home .hero__video {
	position: absolute;
	
	top: 0;
	bottom: auto;
	left: 0;
	right: 0;
	width: 100%;
	height: 95%;
	max-width: none;
	object-fit: cover;
	object-position: center top;
}






.hero.home.hero--video-blocked video.hero__video {
	opacity: 0;
}


.hero.home .hero__video-grade {
	position: absolute;
	inset: 0;
	pointer-events: none;
	mix-blend-mode: color;
	
	opacity: 0.9;
	background-image: linear-gradient(88deg,
		color-mix(in srgb, var(--azure-600) 72%, transparent) 0%,
		color-mix(in srgb, var(--azure-600) 80%, transparent) 55%,
		color-mix(in srgb, var(--signal-900) 82%, transparent) 100%);
}


.hero.home .hero__video-top-fade {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 34%;
	pointer-events: none;
	background: linear-gradient(to bottom, #05091f 0%, rgba(5, 9, 31, 0.85) 40%, transparent 100%);
}


.hero.home .hero__bg-gradient {
	top: auto;
	height: 44.6rem;
}


.hero.home .hero__logo-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 0.1rem;
	width: 100%;
	border-radius: 0.8rem;
	overflow: hidden;
}

.hero.home .hero__logo-cell {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 12rem;
	padding: 2rem;
	min-width: 0;
	
	background-color: rgba(255, 255, 255, 0.05);
	backdrop-filter: blur(1.5rem);
	-webkit-backdrop-filter: blur(1.5rem);
}


.hero.home .hero__grid-logo {
	max-width: 100%;
	max-height: 3.2rem;
	object-fit: contain;
	filter: brightness(0) invert(1);
}


.hero.home .shimmer-grid {
	background-image: radial-gradient(color-mix(in srgb, var(--foundation-50) 20%, transparent) 0.06rem, transparent 0.14rem);
	
	-webkit-mask-image: linear-gradient(to bottom, transparent, black 18%, black 55%, transparent 70%);
	mask-image: linear-gradient(to bottom, transparent, black 18%, black 55%, transparent 70%);
}


.hero.home .hero__headline-col {
	grid-column: 1 / span 10;
}


.hero.home .hero__headline {
	max-width: 100rem;
}
.hero.home .hero__headline,
.hero.home .hero__headline h1,
.hero.home .hero__headline .h1,
.hero.home .hero__headline p {
	text-wrap: balance;
}


.hero.home .hero__copy-col {
	grid-column: 1 / span 6;
	grid-row: 2;
	margin-top: 4.4rem; 
}


.hero.home .hero__customers {
	padding: 0;
	gap: 4rem;
}


.hero.home .hero__customers::before {
	content: none;
}

.hero.home .hero__customers-sub {
	color: var(--foundation-400);
}


@media (max-width: 61.9375rem) { 
	.hero.home .hero__bg {
		height: auto;
		bottom: 0;
	}
	
	.hero.home .hero__video {
		height: 66%; 
	}
	.hero.home .hero__bg-gradient {
		top: auto;
		bottom: 0;
		height: 82%;
		background: linear-gradient(to top,
			var(--foundation-950) 0%,
			var(--foundation-950) 34%,
			transparent 100%); 
	}
	
	.hero.home .hero__cta {
		flex-wrap: nowrap;
		gap: 1.2rem;
	}
	.hero.home .hero__cta .btn {
		flex: 1 1 0;
		justify-content: center;
		text-align: center;
	}
	.hero.home .hero__logo-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.hero.home .hero__logo-cell {
		height: 9rem;
		padding: 1.6rem;
	}
	
	.hero.home .hero__headline {
		font-size: var(--text-6xl);
		line-height: var(--leading-6xl);
		font-weight: var(--fontWeightMedium);
	}
}


.hero__content {
	display: flex;
	flex-direction: column;
	gap: 8rem;
}


.hero__intro {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: 2.4rem;
	align-items: start;
}

.hero__headline-col {
	grid-column: 1 / span 6;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	gap: 3.2rem;
}

.hero__copy-col {
	grid-column: 8 / span 5;
	grid-row: 2;
	display: flex;
	flex-direction: column;
	gap: 3.2rem;
	padding-right: 4rem;
}

.hero__copy-top {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.hero__tagline {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--tagline-base);
	line-height: var(--leading-tagline-base);
	letter-spacing: var(--tracking-tagline-base);
	font-weight: var(--fontWeightRegular);
	text-transform: uppercase;
	color: var(--neon-pulse-500);
}

.hero__headline {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-6xl);
	line-height: var(--leading-6xl);
	letter-spacing: var(--tracking-6xl);
	font-weight: var(--fontWeightRegular);
	color: var(--white);
}

.hero__accent {
	display: block;
	width: 4rem;
	height: 0.3rem;
	background-color: var(--neon-pulse-500);
}

.hero__body p {
	margin-bottom: 1.6rem;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	color: var(--white);
}

.hero__body p:last-child {
	margin-bottom: 0;
}

.hero__cta {
	display: flex;
	align-items: center;
	gap: 1.6rem; 
	flex-wrap: wrap;
}


.hero__customers {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 4rem;
	
	padding: 4rem 0;
}


.hero__customers::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(50% - 50vw);
	width: 100vw;
	background: rgba(0, 0, 0, 0.25);
	backdrop-filter: blur(1rem);
	-webkit-backdrop-filter: blur(1rem);
	
	-webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 46%, black 68%, transparent 100%);
	mask-image: linear-gradient(to bottom, transparent 0%, black 46%, black 68%, transparent 100%);
	z-index: -1;
	pointer-events: none;
}

.hero__customers-head {
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
}

.hero__customers-title {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-3xl);
	line-height: var(--leading-3xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.hero__customers-sub {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}


.hero__logos {
	display: grid;
	grid-template-columns: repeat(var(--ncols, 6), 1fr);
	grid-auto-rows: 12rem;
	border: 0.1rem solid var(--border-grid);
	border-radius: 0.8rem;
	overflow: hidden;
}


.hero__logo-col {
	width: 100%;
	min-width: 0; 
	height: 12rem;
	overflow: hidden;
	border-right: 0.1rem solid var(--border-grid);
}
.hero__logo-col:last-child {
	border-right: 0;
}


.hero__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 12rem;
	padding: 2rem;
}


.hero__logo img {
	
	max-width: 100%;
	max-height: 3.2rem;
	object-fit: contain;
	
	filter: brightness(0) invert(1);
}


.hero__marquee {
	display: flex;
	flex-direction: column;
	gap: 0.1rem; 
	min-width: 0; 
	
	
	--marquee-cell: 21.3rem; 
	--marquee-copies: 4;
}

.hero__marquee--mobile {
	display: none;
}

.hero__marquee-row {
	
	width: 100vw;
	margin-left: calc(50% - 50vw);
	min-width: 0;
	overflow: hidden;
	
	-webkit-mask-image: linear-gradient(to right, transparent 0, black 14rem, black calc(100% - 14rem), transparent 100%);
	mask-image: linear-gradient(to right, transparent 0, black 14rem, black calc(100% - 14rem), transparent 100%);
}

.hero__marquee-track {
	display: flex;
	width: calc(var(--marquee-set-cells, 6) * var(--marquee-cell) * var(--marquee-copies));
	animation: hero-marquee 40s linear infinite; 
	will-change: transform;
}


.hero__marquee-row--reverse .hero__marquee-track {
	animation-direction: reverse;
}

.hero__marquee-set {
	display: flex;
	flex: 0 0 auto;
	width: calc(var(--marquee-set-cells, 6) * var(--marquee-cell));
	min-width: 0;
}

.hero__marquee-cell {
	flex: 0 0 var(--marquee-cell);
	min-width: 0; 
	height: 12rem;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 2rem;
}


.hero__marquee-logo {
	max-width: 100%;
	
	object-fit: contain;
	filter: brightness(0) invert(1);
}


.hero__marquee-row {
	border-top: 0.1rem solid var(--border-grid);
	border-bottom: 0.1rem solid var(--border-grid);
}
.hero__marquee-row + .hero__marquee-row {
	border-top: 0; 
}
.hero__marquee-cell {
	border-right: 0.1rem solid var(--border-grid);
}


.hero.home .hero__marquee-row {
	border: 0;
}
.hero.home .hero__marquee-cell {
	background-color: rgba(255, 255, 255, 0.05);
	-webkit-backdrop-filter: blur(1.5rem);
	backdrop-filter: blur(1.5rem);
	border-right: 0.1rem solid var(--foundation-950);
}

@keyframes hero-marquee {
	from { transform: translateX(0); }
	to   { transform: translateX(var(--marquee-shift, -25%)); }
}


@media (prefers-reduced-motion: reduce) {
	.hero__marquee-track { animation: none; }
}

@media (max-width: 61.9375rem) { 
	
	.hero__marquee { --marquee-cell: 14rem; }
	
	.hero__marquee--desktop { display: none; }
	.hero__marquee--mobile { display: flex; }
	.hero__marquee-cell {
		height: 9rem;
		padding: 1.6rem;
	}
	.hero__marquee-logo { max-height: 2.6rem; }
	.hero__marquee-row {
		-webkit-mask-image: linear-gradient(to right, transparent 0, black 6rem, black calc(100% - 6rem), transparent 100%);
		mask-image: linear-gradient(to right, transparent 0, black 6rem, black calc(100% - 6rem), transparent 100%);
	}
}


@media (max-width: 61.9375rem) {
	
	
	.hero__bg {
		height: 48rem;
		max-height: 100%;
		bottom: auto;
	}

	.hero__bg-gradient {
		top: auto;
		height: 30rem;
	}

	
	.hero__bg-img {
		object-position: 100% center;
	}

	.hero__content {
		gap: 4.8rem;
	}

	.hero__intro {
		display: flex;
		flex-direction: column;
		gap: 3.2rem;
	}

	.hero__headline-col,
	.hero__copy-col {
		gap: 1.6rem;
		padding-right: 0;
	}

	.hero__headline {
		font-size: 3.6rem;
		line-height: 4.2rem;
		font-weight: var(--fontWeightMedium);
	}

	.hero__accent {
		width: 3.2rem;
	}

	.hero__body p {
		font-size: var(--text-sm);
		line-height: var(--leading-sm);
	}

	.hero__customers {
		gap: 3.2rem;
		
		padding: 3.2rem 0;
	}

	.hero__customers-title {
		font-size: var(--text-2xl);
		line-height: var(--leading-2xl);
	}

	
	.hero__logos {
		grid-template-columns: repeat(var(--mcols, 3), 1fr);
		grid-auto-rows: 9rem;
	}
	.hero__logo-col {
		height: 9rem;
	}
	
	.hero__logo {
		height: 9rem;
		padding: 1.6rem;
	}
}


@media (max-width: 48rem) { 
	.hero.style-2 .hero__headline {
		font-size: var(--text-6xl);
		line-height: var(--leading-6xl);
		font-weight: var(--fontWeightRegular);
	}
	.hero.style-2 .hero__body p {
		font-size: var(--text-base);
		line-height: var(--leading-base);
	}
}



.cta-form {
	position: relative;
	color: var(--white);
	
}


.cta-form .container {
	position: relative;
	z-index: 1;
}


.cta-form__globe {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 0;
	display: block;
	width: 134rem;
	max-width: none; 
	aspect-ratio: 1200 / 1052; 
	pointer-events: none;
	mix-blend-mode: plus-lighter;
	opacity: 0.9;
}


.cta-form__card {
	position: relative;
	overflow: hidden; 
	padding: 8rem;
	border-radius: 0.8rem;
	
	background-color: rgba(255, 255, 255, 0.025);
	background-image:
		radial-gradient(72% 95% at 92% -10%, rgba(26, 154, 178, 0.3) 0%, rgba(26, 154, 178, 0.08) 36%, transparent 62%),
		linear-gradient(135deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.01) 55%);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
	-webkit-backdrop-filter: blur(0.3rem);
	backdrop-filter: blur(0.3rem);
}

.cta-form__content {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: flex-start;
	gap: 8rem;
}


.cta-form__text {
	flex: 1 1 0;
	min-width: 0;
	padding-right: 12rem;
}

.cta-form__text-block {
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
}

.cta-form__copy {
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
}

.cta-form__tagline {
	margin: 0;
	font-family: var(--primaryFont);
	font-weight: var(--fontWeightRegular);
	font-size: var(--tagline-xs);
	line-height: var(--leading-tagline-xs);
	letter-spacing: var(--tracking-tagline-xs);
	text-transform: uppercase;
	color: var(--neon-pulse-500);
}

.cta-form__heading h2,
.cta-form__heading .h2,
.cta-form__heading h1,
.cta-form__heading p {
	margin: 0;
	font-size: var(--text-3xl);
	line-height: var(--leading-3xl);
	letter-spacing: var(--tracking-3xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-400);
}

.cta-form__heading strong {
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.cta-form__description p {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	letter-spacing: var(--tracking-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}


.cta-form__form-col {
	flex: 1 1 0;
	min-width: 0;
	padding-top: 2.4rem;
}


.cta-form .form:not(:has(form)) { min-height: 99.9rem; }
@media (max-width: 1440px) { .cta-form .form:not(:has(form)) { min-height: 102.4rem; } }
@media (max-width: 1280px) { .cta-form .form:not(:has(form)) { min-height: 107.4rem; } }
@media (max-width: 900px) { .cta-form .form:not(:has(form)) { min-height: 114.4rem; } }
@media (max-width: 800px) { .cta-form .form:not(:has(form)) { min-height: 116.9rem; } }
@media (max-width: 600px) { .cta-form .form:not(:has(form)) { min-height: 134.8rem; } }
@media (max-width: 480px) { .cta-form .form:not(:has(form)) { min-height: 139.8rem; } }
@media (max-width: 412px) { .cta-form .form:not(:has(form)) { min-height: 147.3rem; } }
@media (max-width: 375px) { .cta-form .form:not(:has(form)) { min-height: 149.8rem; } }
@media (max-width: 360px) { .cta-form .form:not(:has(form)) { min-height: 152.3rem; } }


.cta-form .form fieldset {
	margin-bottom: 3.2rem;
}

.cta-form .form fieldset:last-of-type {
	margin-bottom: 2.4rem;
}

.cta-form .form fieldset.form-columns-2 {
	gap: 1.6rem;
}

.cta-form .form .hs-form-field > label {
	display: block;
	margin-bottom: 0.4rem;
	color: var(--foundation-300);
	font-family: var(--primaryFont);
	font-weight: var(--fontWeightLight);
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
}

.cta-form .form .hs-form-field > label .hs-form-required {
	color: var(--neon-pulse-500);
}

.cta-form .form input[type="text"],
.cta-form .form input[type="email"],
.cta-form .form input[type="tel"],
.cta-form .form input[type="number"],
.cta-form .form select,
.cta-form .form textarea {
	width: 100% !important;
	height: auto;
	padding: 0.8rem 0;
	border: none;
	border-bottom: 0.1rem solid rgba(255, 255, 255, 0.2);
	border-radius: 0;
	background-color: transparent;
	color: var(--white);
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	transition: border-color 200ms ease;
	
}

.cta-form .form textarea {
	min-height: 11.4rem;
	padding: 1.2rem 0;
	resize: vertical;
}

.cta-form .form input::placeholder,
.cta-form .form textarea::placeholder {
	color: var(--foundation-400);
}

.cta-form .form input:focus,
.cta-form .form select:focus,
.cta-form .form textarea:focus {
	border-bottom-color: var(--neon-pulse-500);
}


.cta-form .form select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
	padding-right: 2.4rem;
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%3E%3Cpath%20d='M5%207.5%2010%2012.5%2015%207.5'%20stroke='%23ffffff'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0 center;
	background-size: 2rem 2rem;
}


.cta-form .form select option {
	color: var(--foundation-900);
}


:is(.cta-form, .contact-hero) .form .cta-combo {
	position: relative;
}
:is(.cta-form, .contact-hero) .form .cta-combo__native {
	position: absolute;
	width: 0.1rem;
	height: 0.1rem;
	padding: 0;
	margin: -0.1rem;
	overflow: hidden;
	clip: rect(0 0 0 0);
	border: 0;
	opacity: 0;
	pointer-events: none;
}
:is(.cta-form, .contact-hero) .form .cta-combo__input {
	padding-right: 2.4rem;
	cursor: text;
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%3E%3Cpath%20d='M5%207.5%2010%2012.5%2015%207.5'%20stroke='%23ffffff'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0 center;
	background-size: 2rem 2rem;
}
:is(.cta-form, .contact-hero) .form .cta-combo__list {
	position: absolute;
	top: calc(100% + 0.4rem);
	left: 0;
	right: 0;
	z-index: 30;
	margin: 0;
	padding: 0.4rem 0;
	list-style: none;
	max-height: 22rem;
	overflow-y: auto;
	background: rgba(13, 18, 32, 0.98);
	border: 0.1rem solid rgba(255, 255, 255, 0.15);
	border-radius: 0.6rem;
	box-shadow: var(--shadow-lg);
	display: none;
}
:is(.cta-form, .contact-hero) .form .cta-combo.is-open .cta-combo__list {
	display: block;
}
:is(.cta-form, .contact-hero) .form .cta-combo__option {
	padding: 0.9rem 1.4rem;
	color: var(--foundation-200);
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	cursor: pointer;
}
:is(.cta-form, .contact-hero) .form .cta-combo__option:hover,
:is(.cta-form, .contact-hero) .form .cta-combo__option.is-active {
	background: rgba(255, 255, 255, 0.08);
	color: var(--white);
}
:is(.cta-form, .contact-hero) .form .cta-combo__option[aria-selected="true"] {
	color: var(--neon-pulse-500);
}
:is(.cta-form, .contact-hero) .form .cta-combo__empty {
	padding: 0.9rem 1.4rem;
	color: var(--foundation-400);
	font-size: var(--text-base);
}


:is(.cta-form, .contact-hero) .form .submitted-message,
:is(.cta-form, .contact-hero) .form .hs-form__submitted-message {
	color: var(--white);
	font-family: var(--primaryFont);
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	padding: 1.6rem 0;
}
:is(.cta-form, .contact-hero) .form .submitted-message p,
:is(.cta-form, .contact-hero) .form .hs-form__submitted-message p {
	color: var(--white);
	margin: 0;
}


.cta-form .form .hs-richtext,
.cta-form .form .hs-richtext p,
.cta-form .form .legal-consent-container .hs-form-booleancheckbox-display span {
	color: var(--foundation-300);
}


:is(.cta-form, .contact-hero) .form .hs-richtext a,
:is(.cta-form, .contact-hero) .form .legal-consent-container a {
	color: var(--neon-pulse-500);
	text-decoration: underline;
	text-underline-offset: 0.2rem;
}

:is(.cta-form, .contact-hero) .form .hs-richtext a:hover,
:is(.cta-form, .contact-hero) .form .legal-consent-container a:hover {
	color: var(--white);
}


:is(.cta-form, .contact-hero) .form .hs-form-field .hs-error-msgs {
	position: static;
	margin-top: 0.8rem;
}

:is(.cta-form, .contact-hero) .form .hs-form-field .hs-error-msgs + .hs-error-msgs {
	margin-top: 0.4rem;
}


:is(.cta-form, .contact-hero) .form .hs_recaptcha {
	margin-bottom: 2.4rem;
}


:is(.cta-form, .contact-hero) .form .hs-form-field .hs-error-msgs li label {
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
}

:is(.cta-form, .contact-hero) .form .hs-error-msgs a {
	color: var(--neon-pulse-500);
	text-decoration: underline;
	text-underline-offset: 0.2rem;
	cursor: pointer;
}

:is(.cta-form, .contact-hero) .form .hs-error-msgs a:hover {
	color: var(--white);
}


.cta-form .form .hs_submit .actions {
	display: flex;
	justify-content: flex-start;
	margin: 0;
	padding: 0;
}

.cta-form .form .hs-button.primary.large {
	width: auto;
	padding: 1.1rem 2.4rem;
	color: var(--foundation-900);
	font-size: 1.6rem;
	font-weight: var(--fontWeightMedium);
	border: 0.2rem solid var(--neon-pulse-600);
	border-radius: var(--radius-max, 999.9rem);
	background-color: var(--neon-pulse-600);
	box-shadow: none;
	transition: all 250ms ease;
}

.cta-form .form .hs-button.primary.large:hover {
	color: var(--foundation-900);
	background-color: var(--neon-pulse-500);
	border-color: var(--neon-pulse-500);
	box-shadow: 0.4rem 0.4rem 4rem 0 rgba(180, 204, 80, 0.3);
}


@media (max-width: 64rem) {
	.cta-form__card {
		padding: 4.8rem;
	}
	.cta-form__content {
		gap: 4.8rem;
	}
	.cta-form__text {
		padding-right: 4rem;
	}
}


@media (max-width: 48rem) {
	
	.cta-form__globe {
		top: -6rem; 
		left: 50%;
		transform: translateX(-50%);
		width: 62rem;
	}
	.cta-form__card {
		margin-top: 11rem; 
		padding: 3.2rem;
		
		background-color: rgba(10, 15, 28, 0.66);
	}
	.cta-form__content {
		flex-direction: column;
		gap: 4rem;
	}
	.cta-form__text {
		padding-right: 0;
	}
	.cta-form__form-col {
		padding-top: 0;
		width: 100%; 
	}
	.cta-form .form fieldset.form-columns-2 {
		grid-template-columns: 1fr;
	}
	
	.cta-form .form .hs_submit .actions {
		justify-content: center;
	}
	.cta-form .form .hs-button.primary.large {
		width: 100%;
		text-align: center;
	}
	
	.cta-form__heading h2,
	.cta-form__heading .h2,
	.cta-form__heading h1,
	.cta-form__heading p {
		font-size: var(--text-2xl);
		line-height: var(--leading-2xl);
		letter-spacing: var(--tracking-2xl);
	}
}












.contact-details {
	
}

.contact-details .container {
	display: grid;
	grid-template-columns: 1fr minmax(auto, 77rem);
}

@media (max-width: 991px) {
	.contact-details .container {
		gap: 3rem;
		grid-template-columns: 1fr;
	}
}

.contact-details .details .rich-text {
	margin-bottom: 3.5rem;
}

.contact-details .map {
	display: flex;
	width: 100%;
	height: 35rem;
}

.contact-details .map iframe {
	width: 100%;
	height: 100%;
}

.contact-details .contact-info {
	gap: 2.5rem;
	display: flex;
	flex-direction: column;
}

.contact-details .contact-info .row {
	gap: 1.8rem;
	display: flex;
}

.contact-details .contact-info a {}










footer.footer {
	position: relative;
	
	padding: 3.6rem 0 8rem;
	background-color: var(--foundation-950);
	color: var(--foundation-200);
}

footer.footer .container {
	gap: 6.4rem;
	display: flex;
	flex-direction: column;
}

footer.footer .divider {
	width: 100%;
	height: 0.1rem;
	background-color: rgba(255, 255, 255, 0.1);
}

footer.footer .logo img {
	display: block;
	width: auto;
	height: 3.2rem;
}


footer.footer .newsletter {
	gap: 2.4rem;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}

footer.footer .newsletter .intro {
	flex: 1 1 auto;
	max-width: 42rem;
}

footer.footer .newsletter .tagline {
	display: block;
	margin-bottom: 0.8rem;
	text-transform: uppercase;
	color: var(--neon-pulse-500);
	font-family: var(--font-primary);
	font-weight: var(--fontWeightRegular);
	font-size: var(--tagline-2xs);
	line-height: var(--leading-tagline-2xs);
	letter-spacing: var(--tracking-tagline-2xs);
}

footer.footer .newsletter .heading {
	margin: 0;
	color: var(--white);
	font-family: var(--font-primary);
	font-weight: var(--fontWeightMedium);
	font-size: var(--text-xl);
	line-height: var(--leading-xl);
	letter-spacing: var(--tracking-xl);
}

footer.footer .newsletter-form {
	flex: 0 0 auto;
	width: 63.2rem;
	max-width: 100%;
}

footer.footer .newsletter-form:not(:has(form)) { min-height: 4.9rem; }
@media (max-width: 768px) { footer.footer .newsletter-form:not(:has(form)) { min-height: 10.7rem; } }


footer.footer .newsletter-form form {
	gap: 2.4rem;
	display: flex;
	align-items: flex-end;
}

footer.footer .newsletter-form .hs-form-field {
	flex: 1 1 auto;
}

footer.footer .newsletter-form label {
	display: block;
	margin-bottom: 0.8rem;
	color: var(--foundation-300);
	font-weight: var(--fontWeightLight);
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
}

footer.footer .newsletter-form label .hs-form-required {
	color: var(--neon-pulse-500);
}

footer.footer .newsletter-form input[type="email"] {
	width: 100% !important;
	height: auto;
	border: none;
	border-radius: 0;
	border-bottom: 0.1rem solid rgba(255, 255, 255, 0.2);
	background-color: transparent;
	background-image: url('https://144479753.fs1.hubspotusercontent-eu1.net/hubfs/144479753/raw_assets/public/entelect_corporate/images/footer-mail.svg');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 2rem;
	padding: 0.8rem 0 0.8rem 3.2rem;
	color: var(--white);
	font-size: var(--text-base);
	line-height: var(--leading-base);
}

footer.footer .newsletter-form input[type="email"]::placeholder {
	color: var(--foundation-500);
}

footer.footer .newsletter-form .hs_submit .actions {
	margin: 0;
	padding: 0;
}

footer.footer .newsletter-form input[type="submit"],
footer.footer .newsletter-form .hs-button {
	cursor: pointer;
	border-radius: 5.2rem;
	padding: 0.8rem 2rem;
	background-color: #abc546;
	border: 0.1rem solid rgba(0, 0, 0, 0.2);
	color: #273000;
	box-shadow: none;
	font-family: var(--font-primary);
	font-weight: var(--fontWeightMedium);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	transition: background-color 250ms ease;
}

footer.footer .newsletter-form input[type="submit"]:hover,
footer.footer .newsletter-form .hs-button:hover {
	background-color: var(--neon-pulse-600);
}


footer.footer .links {
	gap: 1.6rem;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

footer.footer .col-heading {
	display: block;
	margin: 0 0 2.4rem;
	color: var(--foundation-500);
	font-weight: var(--fontWeightRegular);
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
}

footer.footer .link-list {
	gap: 1.2rem;
	margin: 0;
	padding: 0;
	display: flex;
	list-style: none;
	flex-direction: column;
}


footer.footer li {
	margin: 0;
	line-height: var(--leading-base);
}

footer.footer .link {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	color: var(--foundation-200);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	opacity: 0.8;
	transition: opacity 250ms ease;
}

footer.footer .link:hover {
	opacity: 1;
}


footer.footer .link[aria-current="page"] {
	color: var(--neon-pulse-500);
	opacity: 1;
	font-weight: var(--fontWeightMedium);
}

footer.footer .link:focus-visible {
	opacity: 1;
	outline: 0.2rem solid var(--neon-pulse-500);
	outline-offset: 0.4rem;
}


footer.footer .legal {
	gap: 2.4rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

footer.footer .legal .copyright {
	margin: 0;
	color: var(--foundation-500);
	font-size: var(--text-base);
	line-height: var(--leading-base);
}



footer.footer .legal-links {
	gap: 2.4rem;
	margin: 0;
	padding: 0;
	display: flex;
	list-style: none;
}

footer.footer .legal-links .link {
	opacity: 1;
	color: var(--foundation-300);
}


@media (max-width: 1024px) {
	footer.footer .container {
		gap: 4.8rem;
	}
	footer.footer .newsletter {
		gap: 2.4rem;
		flex-direction: column;
		align-items: stretch;
	}
	footer.footer .newsletter .intro,
	footer.footer .newsletter-form {
		width: 100%;
		max-width: 100%;
	}
	footer.footer .links {
		gap: 4.8rem 1.6rem;
		grid-template-columns: repeat(2, 1fr);
	}
}


@media (max-width: 768px) {
	footer.footer {
		padding: 6rem 0;
	}
	footer.footer .container {
		gap: 4rem;
	}
	footer.footer .newsletter-form form {
		gap: 1.6rem;
		flex-direction: column;
		align-items: stretch;
	}
	footer.footer .newsletter-form input[type="submit"],
	footer.footer .newsletter-form .hs-button {
		width: 100%;
	}
	footer.footer .links {
		gap: 4rem;
		grid-template-columns: 1fr;
	}
	footer.footer .legal {
		gap: 1.6rem;
		flex-direction: column;
		align-items: flex-start;
	}
}



.story-hero {
	position: relative;
	color: var(--white);
}


.story-hero .container {
	position: relative;
	z-index: 1;
}


.story-hero__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	opacity: 0.7;
}

.story-hero__photo {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.story-hero__fade {
	position: absolute;
	inset: 0;
	
	background: linear-gradient(180deg,
		rgba(13, 18, 32, 0) 40%,
		rgba(13, 18, 32, 0.75) 58%,
		rgba(13, 18, 32, 0.94) 68%,
		var(--foundation-950) 73%);
}


.story-hero__inner {
	display: flex;
	flex-direction: column;
	gap: 12rem; 
}


.story-hero__headline {
	display: flex;
	flex-direction: column;
	gap: 3.2rem;
	max-width: 85rem;
}

.story-hero__tagline {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--tagline-base);
	line-height: var(--leading-tagline-base);
	letter-spacing: var(--tracking-tagline-base);
	font-weight: var(--fontWeightRegular);
	text-transform: uppercase;
	color: var(--neon-pulse-500); 
}

.story-hero__heading {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-6xl);
	line-height: var(--leading-6xl);
	letter-spacing: var(--tracking-6xl);
	font-weight: var(--fontWeightRegular);
	color: var(--white);
}


.story-hero__stats {
	display: flex;
	gap: 2.4rem;
}

.story-hero__stat {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2.4rem; 
}

.story-hero__stat-line {
	width: 3.2rem;
	height: 0.3rem;
	background-color: var(--neon-pulse-500);
}

.story-hero__stat-body {
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
	max-width: 20rem;
}

.story-hero__figure {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightLight);
	color: var(--white);
}

.story-hero__label {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}


@media (max-width: 48rem) { 
	.story-hero__bg {
		height: 48rem; 
	}
	.story-hero__inner {
		gap: 6.4rem;
	}
	.story-hero__headline {
		gap: 1.6rem;
		max-width: none;
	}
	.story-hero__heading {
		font-size: var(--text-5xl);
		line-height: var(--leading-5xl);
		letter-spacing: var(--tracking-5xl);
		font-weight: var(--fontWeightMedium);
	}
	.story-hero__tagline {
		font-size: var(--tagline-xs);
		line-height: var(--leading-tagline-xs);
		letter-spacing: var(--tracking-tagline-xs);
	}
	.story-hero__stats {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		column-gap: 1.6rem;
		row-gap: 4.8rem;
	}
	.story-hero__stat {
		gap: 1rem; 
	}
	.story-hero__stat-line {
		width: 2.4rem;
	}
	.story-hero__stat-body {
		gap: 0.8rem;
	}
	.story-hero__figure {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
		font-weight: var(--fontWeightRegular); 
	}
	.story-hero__label {
		font-size: var(--text-sm);
		line-height: var(--leading-sm);
	}
}



.story-intro {
	position: relative;
	color: var(--white);
}

.story-intro .container {
	position: relative;
	z-index: 1;
}

.story-intro__content {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 2.4rem;
	align-items: stretch;
}


.story-intro__left {
	grid-column: 1 / span 6;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 2.4rem;
}

.story-intro__right {
	grid-column: 7 / span 5;
}


.story-intro__logo img {
	display: block;
	max-width: 100%;
}

.story-intro__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
}

.story-intro__tag {
	display: inline-flex;
	align-items: center;
	padding: 0.4rem 0.8rem;
	border-radius: 0.6rem;
	background-color: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	letter-spacing: var(--tracking-sm);
	font-weight: var(--fontWeightRegular);
	color: var(--foundation-300);
	white-space: nowrap;
}

.story-intro__copy p {
	margin: 0 0 1.6rem;
	font-size: var(--text-xl);
	line-height: var(--leading-xl);
	letter-spacing: var(--tracking-xl);
	font-weight: var(--fontWeightLight);
	color: var(--white);
}

.story-intro__copy p:last-child {
	margin-bottom: 0;
}


@media (max-width: 48rem) { 
	.story-intro__content {
		grid-template-columns: 1fr;
		gap: 4.8rem;
	}
	.story-intro__left,
	.story-intro__right {
		grid-column: 1;
	}
	.story-intro__left {
		justify-content: flex-start;
		gap: 2.4rem;
	}
	.story-intro__copy p {
		font-size: var(--text-lg);
		line-height: var(--leading-lg);
		letter-spacing: var(--tracking-lg);
	}
}



.story-highlights {
	position: relative;
	color: var(--white);
}



.story-highlights__sticky {
	position: static;
}


.story-highlights.is-pinned .story-highlights__sticky {
	
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh; 
	height: 100svh; 
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 11rem 0 4rem; 
	overflow: hidden;
}

.story-highlights .container {
	position: relative;
	z-index: 1;
}


.story-highlights__wave {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: block;
	width: 100%;
	height: 100%;
	pointer-events: none;
}


.story-highlights__head {
	max-width: 52rem;
	margin-bottom: 8rem;
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.story-highlights__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	font-weight: var(--fontWeightRegular);
	text-transform: uppercase;
	color: var(--text-accent);
}

.story-highlights__heading h2,
.story-highlights__heading .h2 {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.story-highlights__heading strong {
	color: var(--white);
	font-weight: inherit;
}



.story-highlights__viewport {
	margin-right: calc(50% - 50vw);
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x proximity;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}
.story-highlights__viewport::-webkit-scrollbar {
	display: none;
}


.story-highlights.is-pinned .story-highlights__viewport {
	margin-left: calc(50% - 50vw);
	overflow: hidden;
	scroll-snap-type: none;
}




.story-highlights.is-pinned .story-highlights__viewport {
	touch-action: pan-y;
}

.story-highlights__viewport {
	cursor: grab;
}


.story-highlights.is-dragging,
.story-highlights.is-dragging .story-highlights__viewport {
	cursor: grabbing;
}

.story-highlights.is-dragging {
	user-select: none;
	-webkit-user-select: none;
}

.story-highlights__track {
	display: flex;
	gap: 2.4rem;
	width: max-content;
	
	padding-right: 2rem;
}


.story-highlights.is-pinned .story-highlights__track {
	padding-left: max(2rem, calc(50vw - 70rem));
	padding-right: max(2rem, calc(50vw - 70rem));
	will-change: transform;
}


.story-highlights__card {
	flex: 0 0 36rem;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	scroll-snap-align: start; 
	padding: 3.2rem;
	border-radius: var(--radius-sm);
	border: 0.1rem solid rgba(255, 255, 255, 0.08);
	background-color: rgba(255, 255, 255, 0.05);
	-webkit-backdrop-filter: blur(4rem);
	backdrop-filter: blur(4rem);
}


.story-highlights.is-pinned .story-highlights__card {
	height: auto;
}


@media (min-width: 64.0625rem) and (max-height: 56rem) { 
	.story-highlights.is-pinned .story-highlights__sticky {
		padding: 9.6rem 0 3rem;
	}
	.story-highlights.is-pinned .story-highlights__head {
		margin-bottom: 2.4rem;
	}
	.story-highlights.is-pinned .story-highlights__card {
		flex-basis: 42rem;
		padding: 2.4rem;
	}
	.story-highlights.is-pinned .story-highlights__icon {
		margin-top: 0;
		margin-bottom: 2rem;
	}
	.story-highlights.is-pinned .story-highlights__icon img {
		width: 5.6rem;
		height: 5.6rem;
	}
	
	.story-highlights.is-pinned .story-highlights__title {
		max-width: none;
	}
}


@media (min-width: 64.0625rem) and (max-height: 44rem) { 
	.story-highlights.is-pinned .story-highlights__sticky {
		padding: 9.6rem 0 2rem;
	}
	.story-highlights.is-pinned .story-highlights__head {
		margin-bottom: 1.6rem;
	}
	.story-highlights.is-pinned .story-highlights__heading h2,
	.story-highlights.is-pinned .story-highlights__heading .h2 {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	.story-highlights.is-pinned .story-highlights__card {
		flex-basis: 52rem;
		padding: 2rem;
	}
	.story-highlights.is-pinned .story-highlights__icon {
		margin-bottom: 1.6rem;
	}
	.story-highlights.is-pinned .story-highlights__icon img {
		width: 4.8rem;
		height: 4.8rem;
	}
	.story-highlights.is-pinned .story-highlights__copy {
		gap: 0.8rem;
		padding-bottom: 0;
	}
}

.story-highlights__icon {
	display: block;
	margin-top: 1.6rem;
	
	margin-bottom: 4rem;
}

.story-highlights__icon img {
	display: block;
	width: 8.8rem;
	height: 8.8rem;
}

.story-highlights__copy {
	margin-top: auto;
	padding-bottom: 0.8rem;
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
}

.story-highlights__title {
	margin: 0;
	max-width: 27rem;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.story-highlights__body p {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	letter-spacing: var(--tracking-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400);
}


@media (max-width: 64rem) { 
	.story-highlights__head {
		max-width: none;
		margin-bottom: 6rem;
	}
	
	.story-highlights.is-pinned .story-highlights__card {
		flex-basis: min(80vw, 42rem);
	}
	.story-highlights.is-pinned .story-highlights__track {
		padding-left: calc((100vw - min(80vw, 42rem)) / 2);
		padding-right: calc((100vw - min(80vw, 42rem)) / 2);
	}
}


@media (max-width: 48rem) { 
	.story-highlights__head {
		margin-bottom: 4.8rem;
	}
	.story-highlights__heading h2,
	.story-highlights__heading .h2 {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	
	.story-highlights__card {
		flex-basis: min(85vw, 34rem);
	}

	
	.story-highlights.is-pinned .story-highlights__sticky {
		padding: 8rem 0 2rem;
	}
	.story-highlights.is-pinned .story-highlights__head {
		margin-bottom: 1.6rem;
	}
	.story-highlights.is-pinned .story-highlights__card {
		padding: 2.4rem;
	}
	.story-highlights.is-pinned .story-highlights__icon {
		margin-bottom: 2.4rem;
	}
	.story-highlights.is-pinned .story-highlights__icon img {
		width: 6.4rem;
		height: 6.4rem;
	}
	.story-highlights.is-pinned .story-highlights__copy {
		gap: 0.8rem;
	}
}



.story-impact {
	position: relative;
	color: var(--white);
}

.story-impact .container {
	position: relative;
	z-index: 1;
}

.story-impact__inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2.4rem;
	align-items: start;
}


.story-impact__left {
	display: flex;
	flex-direction: column;
	gap: 12rem;
	position: sticky;
	top: 12rem; 
}

.story-impact__head {
	width: 83.333%;
	position: relative;
	z-index: 2; 
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.story-impact__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	font-weight: var(--fontWeightRegular);
	text-transform: uppercase;
	color: var(--text-accent);
}

.story-impact__heading h2,
.story-impact__heading .h2 {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.story-impact__heading strong {
	color: var(--white);
	font-weight: inherit;
}




.story-impact__right {
	display: flex;
	flex-direction: column;
	gap: 12rem;
	position: relative;
	z-index: 2; 
}

.story-impact__intro {
	max-width: 83.333%;
	padding-top: 8rem; 
}

.story-impact__intro p {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	letter-spacing: var(--tracking-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}


.story-impact__stats {
	display: flex;
	flex-direction: column;
	gap: 8rem;
}

.story-impact__stat {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

.story-impact__figure {
	margin: 0;
	font-size: var(--text-6xl);
	line-height: var(--leading-6xl);
	letter-spacing: var(--tracking-6xl);
	font-weight: var(--fontWeightLight);
	color: var(--white);
}

.story-impact__caption {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400);
}


.story-impact__units {
	display: flex;
	flex-direction: column;
	gap: 8rem;
}

.story-impact__units-heading h2,
.story-impact__units-heading h3,
.story-impact__units-heading .h3 {
	margin: 0;
	font-size: var(--text-2xl);
	line-height: var(--leading-2xl);
	letter-spacing: var(--tracking-2xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.story-impact__units-heading strong {
	color: var(--white);
	font-weight: inherit;
}

.story-impact__list {
	list-style: none;
	margin: 0;
	padding: 0;
	border-top: 0.1rem solid rgba(255, 255, 255, 0.1);
}


.story-impact__item {
	margin: 0;
	display: flex;
	align-items: flex-start;
	padding: 4rem 0;
	border-bottom: 0.1rem solid rgba(255, 255, 255, 0.1);
}

.story-impact__num {
	flex-shrink: 0;
	width: 4rem;
	padding-top: 0.7rem;
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-500);
}

.story-impact__unit {
	flex: 1;
	min-width: 0;
	font-size: var(--text-xl);
	line-height: var(--leading-xl);
	letter-spacing: var(--tracking-xl);
	font-weight: var(--fontWeightRegular);
	color: var(--white);
}


@media (max-width: 64rem) { 
	.story-impact__inner {
		grid-template-columns: 1fr;
		gap: 8rem;
	}
	.story-impact__left,
	.story-impact__right {
		gap: 8rem;
	}
	.story-impact__left {
		position: static; 
		top: auto;
	}
	.story-impact__head {
		width: 100%;
	}
	.story-impact__intro {
		width: 100%;
		max-width: none;
		padding-top: 0;
	}
	.story-impact__stats {
		gap: 6rem;
	}
}

@media (max-width: 48rem) { 
	.story-impact__left,
	.story-impact__right {
		gap: 6rem;
	}
	.story-impact__units {
		gap: 4rem;
	}
	.story-impact__item {
		padding: 3rem 0;
	}
}



.page-hero {
	position: relative;
	color: var(--white);
}

.page-hero__inner {
	max-width: 84rem; 
	display: flex;
	flex-direction: column;
	gap: 3.2rem;
}

.page-hero__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-size: var(--tagline-base);
	line-height: var(--leading-tagline-base);
	letter-spacing: var(--tracking-tagline-base);
	font-weight: var(--fontWeightRegular);
	text-transform: uppercase;
	color: var(--text-accent);
}

.page-hero__heading h1,
.page-hero__heading h2,
.page-hero__heading .h1 {
	margin: 0;
	font-size: var(--text-6xl);
	line-height: var(--leading-6xl);
	letter-spacing: var(--tracking-6xl);
	font-weight: var(--fontWeightRegular);
	color: var(--white);
}

@media (max-width: 48rem) {
	.page-hero__inner {
		max-width: none;
		gap: 2rem;
	}
}



.stories-listing {
	position: relative;
	color: var(--white);
}

.stories-listing .container {
	position: relative;
	z-index: 1;
}



.stories-listing__tabs {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.8rem;
	padding: 2.2rem 0;
	margin-bottom: 8rem;
	border-bottom: 0.1rem solid rgba(255, 255, 255, 0.1);
}

.stories-listing__tabs::before {
	content: "";
	position: absolute;
	top: 0;
	left: calc(50% - 50vw);
	width: 100vw;
	height: 0.1rem;
	background-color: rgba(255, 255, 255, 0.1);
}


.stories-listing__tab {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	
	padding: 0.9rem 1.8rem;
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	border-radius: var(--radius-max);
	background-color: rgba(255, 255, 255, 0.05);
	cursor: pointer;
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-300);
	white-space: nowrap;
	transition: color 0.2s ease, background-color 0.2s ease;
}


.stories-listing__tab:hover {
	background-color: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.2);
	color: var(--white);
}


.stories-listing__tab.is-active {
	background-color: var(--neon-pulse-600);
	border-color: var(--neon-pulse-600);
	color: var(--foundation-950);
}


.stories-listing__tab.is-active:hover {
	background-color: var(--neon-pulse-500);
	border-color: var(--neon-pulse-500);
}


.stories-listing__tab:focus-visible {
	outline: 0.2rem solid var(--text-accent);
	outline-offset: 0.2rem;
}


.stories-listing__status {
	position: absolute;
	width: 0.1rem;
	height: 0.1rem;
	margin: -0.1rem;
	padding: 0;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}


.stories-listing__grid {
	display: flex;
	flex-direction: column;
	gap: 8rem;
}


.stories-listing__skeletons {
	display: none;
}

.stories-listing.is-loading .stories-listing__grid {
	display: none;
}

.stories-listing.is-loading .stories-listing__skeletons {
	display: flex;
	flex-direction: column;
	gap: 8rem;
	pointer-events: none;
}


.stories-listing__sk {
	overflow: hidden;
	background-color: rgba(255, 255, 255, 0.05);
	background-image: linear-gradient(
		90deg,
		transparent 0%,
		rgba(255, 255, 255, 0.07) 50%,
		transparent 100%
	);
	background-repeat: no-repeat;
	background-size: 200% 100%;
	animation: stories-listing-sheen 1.1s linear infinite;
}

@keyframes stories-listing-sheen {
	from { background-position: -100% 0; }
	to { background-position: 200% 0; }
}

.stories-listing__sk-lines {
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
}

.stories-listing__sk--tag {
	width: 8rem;
	height: 2.8rem;
	border-radius: var(--radius-xs);
}


.stories-listing__sk--line {
	height: 2.8rem;
	border-radius: var(--radius-xs);
}

.stories-listing__sk--short {
	width: 55%;
}

.stories-listing__sk--link {
	width: 16rem;
	height: 2.4rem;
	border-radius: var(--radius-xs);
}


@media (prefers-reduced-motion: reduce) {
	.stories-listing__sk {
		animation: none;
	}
}

.stories-listing__card {
	display: flex;
	align-items: stretch;
	gap: 2.4rem;
}


.stories-listing__card[hidden],
.stories-listing__more[hidden] {
	display: none;
}

.stories-listing__copy {
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	justify-content: flex-start; 
	gap: 4rem;
}

.stories-listing__cardhead {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.stories-listing__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
}

.stories-listing__tag {
	display: inline-flex;
	align-items: center;
	padding: 0.4rem 0.8rem;
	border-radius: 0.6rem;
	background-color: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightRegular);
	color: var(--foundation-300);
	white-space: nowrap;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}


.stories-listing__tag.is-match {
	background-color: var(--neon-pulse-600);
	border-color: var(--neon-pulse-600);
	color: var(--white);
}

.stories-listing__title {
	margin: 0;
	max-width: 48rem;
	font-size: var(--text-2xl);
	line-height: var(--leading-2xl);
	letter-spacing: var(--tracking-2xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.stories-listing__link {
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
	width: fit-content;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.stories-listing__arrow {
	width: 1.2rem;
	height: 1.2rem;
	flex-shrink: 0;
	color: var(--neon-pulse-500);
	transition: transform 0.2s ease;
}

.stories-listing__link:hover .stories-listing__arrow {
	transform: translateX(0.4rem);
}


.stories-listing__medialink {
	position: absolute;
	inset: 0;
	z-index: 1;
}


.stories-listing__media {
	flex: 1 1 0;
	min-width: 0;
	position: relative;
	aspect-ratio: 400 / 300;
	overflow: hidden;
	border-radius: var(--radius-sm);
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	transition: box-shadow 0.3s ease, border-color 0.3s ease;
}


.stories-listing__card:hover .stories-listing__media,
.stories-listing__card:focus-within .stories-listing__media {
	border-color: rgba(255, 255, 255, 0.16);
	box-shadow: 0 0 8rem rgba(1, 142, 154, 0.2);
}

.stories-listing__photo {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s cubic-bezier(0.38, 0.21, 0, 0.92);
}

.stories-listing__card:hover .stories-listing__photo,
.stories-listing__card:focus-within .stories-listing__photo {
	transform: scale(1.05);
}
@media (prefers-reduced-motion: reduce) {
	.stories-listing__photo { transition: none; }
	.stories-listing__card:hover .stories-listing__photo,
	.stories-listing__card:focus-within .stories-listing__photo { transform: none; }
}

.stories-listing__shade {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 50%;
	pointer-events: none;
	background: linear-gradient(to bottom, rgba(19, 25, 45, 0), rgba(19, 25, 45, 0.6));
}


.stories-listing__logo {
	position: absolute;
	left: 2rem;
	right: 2rem;
	bottom: 2rem;
}

.stories-listing__logo img {
	display: block;
	height: auto;
	max-width: 100%;
}


.stories-listing__actions {
	display: flex;
	justify-content: center;
	margin-top: 8rem;
}

.stories-listing__more {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 1.2rem 3.2rem;
	border-radius: var(--radius-max);
	border: 0.1rem solid rgba(255, 255, 255, 0.2);
	background: transparent;
	cursor: pointer;
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

.stories-listing__more:hover {
	background-color: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.4);
}


@media (max-width: 64rem) { 
	.stories-listing__card {
		flex-direction: column;
		gap: 2.4rem;
	}
	
	.stories-listing__copy,
	.stories-listing__media {
		flex: none;
		width: 100%;
	}
	.stories-listing__media {
		order: -1; 
	}
	.stories-listing__copy {
		justify-content: flex-start;
		gap: 2.4rem;
	}
	.stories-listing__title {
		max-width: none;
	}
}

@media (max-width: 48rem) { 
	.stories-listing__tabs {
		--sl-fade: 4rem; 
		flex-wrap: nowrap;
		gap: 0.8rem;
		
		padding: 0.8rem 0;
		margin-bottom: 5rem;
		overflow-x: auto;
		
		overflow-y: hidden;
		overscroll-behavior-x: contain;
		scrollbar-width: none;
		
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		padding-left: 2rem;
		border-top: 0.1rem solid rgba(255, 255, 255, 0.1);
	}
	.stories-listing__tabs::before {
		display: none; 
	}
	.stories-listing__tabs::-webkit-scrollbar {
		display: none;
	}
	
	.stories-listing__tabs::after {
		content: "";
		position: sticky;
		right: 0;
		flex: 0 0 var(--sl-fade);
		align-self: stretch;
		margin-left: calc(var(--sl-fade) * -1);
		background: linear-gradient(to right, rgba(13, 18, 32, 0), #0d1220 80%);
		pointer-events: none;
		transition: opacity 0.2s ease;
	}

	
	.stories-listing__tabs.is-at-end::after {
		opacity: 0;
	}
	.stories-listing__tab {
		flex-shrink: 0;
	}
	.stories-listing__grid {
		gap: 5rem;
	}
	.stories-listing.is-loading .stories-listing__skeletons {
		gap: 5rem;
	}
	.stories-listing__actions {
		margin-top: 5rem;
	}
}



.work-spotlight {
	position: relative;
	color: var(--white);
}

.work-spotlight .container {
	position: relative;
	z-index: 1;
}

.work-spotlight__inner {
	display: flex;
	flex-direction: column;
	gap: 12rem;
}


.work-spotlight__header {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	max-width: 73rem;
}

.work-spotlight__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	font-weight: var(--fontWeightRegular);
	text-transform: uppercase;
	color: var(--text-accent);
}

.work-spotlight__heading h1,
.work-spotlight__heading h2,
.work-spotlight__heading .h2,
.work-spotlight__heading p {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.work-spotlight__heading:has(strong) h1,
.work-spotlight__heading:has(strong) h2,
.work-spotlight__heading:has(strong) .h2,
.work-spotlight__heading:has(strong) p {
	color: var(--foundation-500);
}

.work-spotlight__heading strong {
	color: var(--white);
	font-weight: inherit;
}

.work-spotlight__intro {
	max-width: 52rem;
}

.work-spotlight__intro p {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400);
}


.work-spotlight__body {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	column-gap: 2.4rem;
	align-items: center; 
}

.work-spotlight__list {
	grid-column: 1 / span 5;
}

.work-spotlight__item {
	border-bottom: 0.1rem solid rgba(255, 255, 255, 0.1);
}

.work-spotlight__item:first-child {
	border-top: 0.1rem solid rgba(255, 255, 255, 0.1);
}


.work-spotlight__head {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 4rem;
	padding: 2.4rem 0;
	background: transparent;
	border: 0;
	cursor: pointer;
	text-align: left;
	color: inherit;
}

.work-spotlight__item-title {
	flex: 1 1 auto;
	min-width: 0;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.accordion-toggle {
	position: relative;
	flex: none;
	width: 4rem;
	height: 4rem;
	border-radius: var(--radius-max);
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
}

.accordion-toggle::before,
.accordion-toggle::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 1.4rem;
	height: 0.2rem;
	background: var(--white);
	transform: translate(-50%, -50%);
}

.accordion-toggle::after {
	transform: translate(-50%, -50%) rotate(90deg);
	transition: opacity 0.3s ease;
}

[data-accordion-item].is-open .accordion-toggle::after {
	opacity: 0; 
}


.work-spotlight__panel {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.35s ease;
}

.work-spotlight__item.is-open .work-spotlight__panel {
	grid-template-rows: 1fr;
}

.work-spotlight__panel-inner {
	overflow: hidden;
	min-height: 0;
}


.work-spotlight__item.is-open .work-spotlight__panel-inner {
	padding-bottom: 2.4rem;
}

.work-spotlight__panel-inner p {
	margin: 0;
	padding-right: 2.4rem;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400);
}


.work-spotlight__media {
	grid-column: 7 / span 6;
	aspect-ratio: 1 / 1;
	border-radius: 0.8rem;
	overflow: hidden;
}

.work-spotlight__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}


@media (min-width: 64.0625rem) {
	.work-spotlight:not(.plain-image) .work-spotlight__body {
		align-items: start;
	}
}

.work-spotlight:not(.plain-image) .work-spotlight__panel-inner p {
	color: var(--foundation-300); 
}


.work-spotlight.has-stats .work-spotlight__inner {
	row-gap: 0;
}

.work-spotlight.has-stats .work-spotlight__header {
	margin-bottom: 9.2rem; 
}

.work-spotlight__stats {
	display: grid;
	
	grid-template-columns: repeat(3, minmax(0, 37rem));
	justify-content: space-between;
	column-gap: 4.8rem;
	row-gap: 4rem;
	margin-bottom: 14.4rem; 
}

.work-spotlight__stat {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.work-spotlight__stat-line {
	width: 3.2rem;
	height: 0.3rem;
	margin-bottom: 1.6rem;
	background-color: var(--neon-pulse-500);
}

.work-spotlight__figure {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightLight);
	color: var(--white);
}

.work-spotlight__stat-text {
	margin: 1.2rem 0 0;
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	letter-spacing: var(--tracking-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}


@media (max-width: 64rem) { 
	.work-spotlight__inner {
		gap: 6.4rem;
	}
	
	.work-spotlight.has-stats .work-spotlight__header {
		margin-bottom: 4.6rem;
	}
	.work-spotlight__stats {
		column-gap: 2.4rem;
		margin-bottom: 7.2rem;
	}
	.work-spotlight__body {
		display: flex;
		flex-direction: column;
		gap: 4rem;
	}
	.work-spotlight__media {
		order: -1;
		width: 100%;
		max-width: 44rem;
	}
}

@media (max-width: 48rem) { 
	.work-spotlight__heading h1,
	.work-spotlight__heading h2,
	.work-spotlight__heading .h2,
	.work-spotlight__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	
	.work-spotlight__stats {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 3.2rem;
	}
	.work-spotlight__figure {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
}

@media (prefers-reduced-motion: reduce) {
	.work-spotlight__panel {
		transition: none;
	}
}



.delivery-stories {
	position: relative;
	color: var(--white);
}

.delivery-stories .container {
	position: relative;
	z-index: 1;
}

.delivery-stories__inner {
	display: flex;
	flex-direction: column;
	gap: 8rem;
}

.delivery-stories__header {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.delivery-stories__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	font-weight: var(--fontWeightRegular);
	text-transform: uppercase;
	color: var(--text-accent);
}

.delivery-stories__heading h1,
.delivery-stories__heading h2,
.delivery-stories__heading .h2,
.delivery-stories__heading p {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.delivery-stories__heading strong {
	color: var(--white);
	font-weight: inherit;
}


.delivery-stories__item {
	border-bottom: 0.1rem solid rgba(255, 255, 255, 0.1);
}

.delivery-stories__item:first-child {
	border-top: 0.1rem solid rgba(255, 255, 255, 0.1);
}

.delivery-stories__head {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 2.4rem;
	padding: 2.4rem 0;
	background: transparent;
	border: 0;
	cursor: pointer;
	text-align: left;
	color: inherit;
}

.delivery-stories__brand {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	align-items: center;
	gap: 2.4rem;
}

.delivery-stories__logo {
	flex: none;
	width: 5.6rem;
	height: 5.6rem;
	border-radius: 0.8rem;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.delivery-stories__logo img {
	display: block;
	max-width: 76%;
	max-height: 76%;
	width: auto;
	height: auto;
	object-fit: contain;
}

.delivery-stories__title {
	flex: 1 1 auto;
	min-width: 0;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.delivery-stories__panel {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.4s ease;
}

.delivery-stories__item.is-open .delivery-stories__panel {
	grid-template-rows: 1fr;
}

.delivery-stories__panel-inner {
	overflow: hidden;
	min-height: 0;
	display: flex;
	flex-direction: column;
	gap: 3.2rem;
}

.delivery-stories__item.is-open .delivery-stories__panel-inner {
	padding-bottom: 4rem;
}

.delivery-stories__media {
	border-radius: 0.8rem;
	overflow: hidden;
	border: 0.1rem solid rgba(255, 255, 255, 0.08);
	aspect-ratio: 8 / 3;
}

.delivery-stories__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.delivery-stories__text {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.6rem;
}

.delivery-stories__col {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	padding-right: 4.8rem;
}

.delivery-stories__label {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.delivery-stories__body p {
	margin: 0;
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400);
}


@media (max-width: 64rem) { 
	.delivery-stories__text {
		grid-template-columns: 1fr;
		gap: 2.4rem;
	}
	.delivery-stories__col {
		padding-right: 0;
	}
	.delivery-stories__media {
		aspect-ratio: 16 / 9;
	}
}

@media (max-width: 48rem) { 
	.delivery-stories__inner {
		gap: 5rem;
	}
	.delivery-stories__logo {
		width: 4.8rem;
		height: 4.8rem;
	}
	
	.delivery-stories__heading h1,
	.delivery-stories__heading h2,
	.delivery-stories__heading .h2,
	.delivery-stories__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
}

@media (prefers-reduced-motion: reduce) {
	.delivery-stories__panel {
		transition: none;
	}
}



.expertise-cards {
	position: relative;
	color: var(--white);
	
	--swiper-pagination-bullet-size: 0.6rem;
	--swiper-pagination-bullet-inactive-color: #ffffff;
	--swiper-pagination-bullet-inactive-opacity: 0.2;
	--swiper-pagination-color: #ffffff;
	--swiper-pagination-bullet-opacity: 1;
}

.expertise-cards .container {
	position: relative;
	z-index: 1;
}



.expertise-cards__wave {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	display: block;
	width: 100%;
	height: 100%;
	opacity: 0.7;
}

.expertise-cards__inner {
	display: flex;
	flex-direction: column;
	gap: 5.6rem;
}

.expertise-cards__header {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.expertise-cards__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	font-weight: var(--fontWeightRegular);
	text-transform: uppercase;
	color: var(--text-accent);
}

.expertise-cards__heading h1,
.expertise-cards__heading h2,
.expertise-cards__heading .h2,
.expertise-cards__heading p {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.expertise-cards__heading strong {
	color: var(--white);
	font-weight: inherit;
}


.expertise-cards__grid {
	position: relative;
}


.expertise-cards__card {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 3.2rem;
	aspect-ratio: 302 / 460;
	height: auto; 
	border-radius: 0.8rem;
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.08);
	-webkit-backdrop-filter: blur(4rem);
	backdrop-filter: blur(4rem);
	overflow: hidden;
	
	transition: box-shadow 0.5s linear, border-color 0.5s linear;
}

.expertise-cards__card:hover {
	border-color: rgba(255, 255, 255, 0.16);
	box-shadow: 0 0 8rem rgba(1, 142, 154, 0.2); 
}

.expertise-cards__card-copy {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

.expertise-cards__card-title {
	margin: 0;
	font-size: var(--text-xl);
	line-height: var(--leading-xl);
	letter-spacing: var(--tracking-xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.expertise-cards__card-desc {
	opacity: 0;
	transform: translateX(-2rem);
	transition: opacity 0.5s linear, transform 0.5s linear; 
}

.expertise-cards__card:hover .expertise-cards__card-desc,
.expertise-cards__card:focus-within .expertise-cards__card-desc {
	opacity: 1;
	transform: translateX(0);
}

.expertise-cards__card-desc p {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300); 
}

.expertise-cards__card-link {
	margin-top: 2.4rem;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	width: fit-content;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


a.expertise-cards__card-link::after {
	content: "";
	position: absolute;
	inset: 0;
}

.expertise-cards__arrow {
	width: 2.2rem;
	height: 2.2rem;
	flex-shrink: 0;
	color: var(--neon-pulse-500); 
	transition: transform 0.2s ease;
}

.expertise-cards__card:hover .expertise-cards__arrow {
	transform: translateX(0.4rem);
}


.expertise-cards__nav {
	display: none;
}

.expertise-cards__navbtn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 4rem;
	height: 4rem;
	flex: none;
	padding: 0;
	border-radius: var(--radius-max);
	background: rgba(255, 255, 255, 0.08);
	border: 0.1rem solid rgba(255, 255, 255, 0.14);
	-webkit-backdrop-filter: blur(1rem);
	backdrop-filter: blur(1rem);
	color: var(--white);
	cursor: pointer;
	transition: background-color 0.2s ease, opacity 0.2s ease;
}

.expertise-cards__navbtn:hover {
	background: rgba(255, 255, 255, 0.16);
}

.expertise-cards__navbtn svg {
	width: 2rem;
	height: 2rem;
}

.expertise-cards__navbtn.swiper-button-disabled {
	opacity: 0.35;
	cursor: default;
}


.expertise-cards__pagination {
	position: static;
	width: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.6rem;
}


@media (min-width: 48.0625rem) {
	.expertise-cards__grid {
		overflow: visible;
	}
	.expertise-cards__track {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 2.4rem;
		height: auto;
		transform: none !important;
	}
}


@media (min-width: 48.0625rem) and (max-width: 64rem) {
	.expertise-cards__track {
		grid-template-columns: repeat(2, 1fr);
	}
	.expertise-cards__card {
		aspect-ratio: 302 / 360;
	}
}


@media (max-width: 48rem) {
	
	.expertise-cards__grid {
		width: 100%;
		min-width: 0;
	}
	
	.expertise-cards__heading h1,
	.expertise-cards__heading h2,
	.expertise-cards__heading .h2,
	.expertise-cards__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	.expertise-cards__card {
		
		width: 84%;
		max-width: 34rem;
		aspect-ratio: 302 / 420;
		
		background: rgba(255, 255, 255, 0.1);
	}
	
	.expertise-cards__wave {
		opacity: 0.5;
	}
	
	.expertise-cards__card-desc {
		opacity: 1;
		transform: none;
	}
	.expertise-cards__nav {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		max-width: 34.3rem;
		margin: 0 auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	.expertise-cards__card,
	.expertise-cards__arrow,
	.expertise-cards__card-desc,
	.expertise-cards__navbtn {
		transition: none;
	}
}



.leadership-grid {
	position: relative;
	color: var(--white);
}

.leadership-grid .container {
	position: relative;
	z-index: 1;
}

.leadership-grid__inner {
	display: flex;
	flex-direction: column;
	gap: 4rem;
}


.leadership-grid.has-divider .leadership-grid__inner {
	border-top: 0.1rem solid rgba(255, 255, 255, 0.1);
	padding-top: 8rem;
}

.leadership-grid__heading {
	margin: 0;
	font-size: var(--text-2xl);
	line-height: var(--leading-2xl);
	letter-spacing: var(--tracking-2xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.leadership-grid__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 2.4rem;
	row-gap: 8rem;
}

.leadership-grid__card {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}


.leadership-grid__media {
	position: relative;
	aspect-ratio: 410 / 514;
	border-radius: 0.8rem;
	overflow: hidden;
	border: 0.1rem solid rgba(255, 255, 255, 0.08);
	
	background:
		url("https://144479753.fs1.hubspotusercontent-eu1.net/hubfs/144479753/raw_assets/public/entelect_corporate/images/leadership/card-backdrop.png") center / cover no-repeat,
		radial-gradient(120% 110% at 50% 78%, #16454f 0%, #134149 42%, #0f3b45 72%, #0c3540 100%);
}


.leadership-grid__photo {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin-inline: auto;
	display: block;
	width: auto;
	height: 100%;
	max-width: none;
	object-fit: contain;
	object-position: bottom center;
}


.leadership-grid__hover {
	position: absolute;
	inset: 0;
	overflow: hidden;
	clip-path: inset(100% 0 0 0);
	transition: clip-path 0.4s ease;
}

@media (hover: hover) and (pointer: fine) {
	.leadership-grid__card:hover .leadership-grid__hover {
		clip-path: inset(0 0 0 0);
	}
}
.leadership-grid__card.is-open .leadership-grid__hover {
	clip-path: inset(0 0 0 0);
}


.leadership-grid__card.is-expandable {
	cursor: pointer;
}
.leadership-grid__card.is-expandable:focus-visible {
	outline: 0.2rem solid #018e9a;
	outline-offset: 0.3rem;
}
.leadership-grid__panel {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
	padding: 2.8rem;
	
	background: color-mix(in srgb, var(--foundation-950) 92%, transparent);
	backdrop-filter: blur(1.2rem);
	-webkit-backdrop-filter: blur(1.2rem);
	transform: translateY(100%);
	visibility: hidden;
	transition: transform 0.4s ease, visibility 0s linear 0.4s;
}

@media (hover: hover) and (pointer: fine) {
	.leadership-grid__card.is-expandable:hover .leadership-grid__panel {
		transform: translateY(0);
		visibility: visible;
		transition: transform 0.4s ease, visibility 0s linear 0s;
	}
}
.leadership-grid__card.is-open .leadership-grid__panel {
	transform: translateY(0);
	visibility: visible;
	transition: transform 0.4s ease, visibility 0s linear 0s;
}

.leadership-grid__bio {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 255, 255, 0.3) transparent;
}

.leadership-grid__bio.has-more {
	-webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 4.8rem), transparent);
	mask-image: linear-gradient(to bottom, #000 calc(100% - 4.8rem), transparent);
}
.leadership-grid__bio::-webkit-scrollbar {
	width: 0.6rem;
}
.leadership-grid__bio::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.25);
	border-radius: var(--radius-max);
}
.leadership-grid__bio p {
	margin: 0 0 1.2rem;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300); 
}
.leadership-grid__bio p:last-child {
	margin-bottom: 0;
}

.leadership-grid__socials {
	display: flex;
	gap: 1.2rem;
	flex: none;
	margin-top: auto;
}
.leadership-grid__social {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
	border-radius: var(--radius-max);
	background: rgba(255, 255, 255, 0.1);
	color: var(--white);
	flex: none;
	transition: background 0.2s ease;
}
.leadership-grid__social:hover {
	background: rgba(255, 255, 255, 0.2);
}
.leadership-grid__social svg {
	width: 1.8rem;
	height: 1.8rem;
}


.leadership-grid__meta {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 1.6rem;
}

.leadership-grid__meta-text {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	flex: 1 1 auto;
	min-width: 0;
}


.leadership-grid__chev {
	display: none;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 3.2rem;
	height: 3.2rem;
	border-radius: var(--radius-max);
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
	color: var(--white);
	transition: transform 0.4s ease, background 0.2s ease;
}

.leadership-grid__chev svg {
	width: 1.6rem;
	height: 1.6rem;
}


.leadership-grid__card.is-open .leadership-grid__chev {
	transform: rotate(180deg);
	background: rgba(255, 255, 255, 0.14);
}

@media (hover: none), (max-width: 64rem) { 
	.leadership-grid__card.is-expandable .leadership-grid__chev {
		display: inline-flex;
	}
}

@media (prefers-reduced-motion: reduce) {
	.leadership-grid__chev { transition: none; }
}

.leadership-grid__name {
	margin: 0;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.leadership-grid__title {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300); 
}


@media (max-width: 64rem) { 
	.leadership-grid__grid {
		grid-template-columns: repeat(2, 1fr);
		row-gap: 5.6rem;
	}
	.leadership-grid.has-divider .leadership-grid__inner {
		padding-top: 5.6rem;
	}
}


@media (max-width: 48rem) { 
	.leadership-grid__grid {
		grid-template-columns: 1fr;
		row-gap: 4rem;
		justify-items: center;
	}
	.leadership-grid__card {
		width: 100%;
		max-width: 40rem;
	}
}


.home-page {
	background-color: var(--foundation-950);
}

.home-page section {
	position: relative;
	background-color: transparent !important;
}

.home-page .container {
	position: relative;
	z-index: 1;
}


.industry-cards {
	position: relative;
}

.industry-cards__inner {
	display: flex;
	flex-direction: column;
	gap: 8rem;
}

.industry-cards__headline {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	
	max-width: 68rem;
}

.industry-cards__tagline {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
	color: var(--text-accent);
}

.industry-cards__heading h2,
.industry-cards__heading .h2,
.industry-cards__heading p {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.industry-cards__heading strong {
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.industry-cards__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 2.4rem;
}

.industry-cards__card {
	position: relative;
	display: block;
	aspect-ratio: 302 / 460;
	border-radius: 0.8rem;
	overflow: hidden;
	border: 0.1rem solid rgba(255, 255, 255, 0.08);
	transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.industry-cards__photo {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s ease;
}


.industry-cards__shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(to bottom, rgba(13, 18, 32, 0.75) 0%, rgba(13, 18, 32, 0.25) 30%, transparent 55%);
	pointer-events: none;
}


.industry-cards__overlay {
	position: absolute;
	inset: 0;
	background: rgba(13, 18, 32, 0.55);
	opacity: 0;
	transition: opacity 0.35s ease;
	pointer-events: none;
}

.industry-cards__content {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 1.6rem;
	padding: 2.4rem;
}

.industry-cards__copy {
	display: flex;
	flex-direction: column;
	gap: 0.8rem;
}

.industry-cards__title {
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.industry-cards__desc {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-200);
	opacity: 0;
	transition: opacity 0.35s ease;
}

.industry-cards__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
	opacity: 0;
	transition: opacity 0.35s ease;
}

.industry-cards__cta-arrow {
	flex: none;
	color: var(--neon-pulse-500); 
}

.industry-cards__card:hover {
	border-color: color-mix(in srgb, var(--signal-teal-600) 60%, transparent);
	box-shadow: 0 0 3rem 0 color-mix(in srgb, var(--signal-teal-600) 25%, transparent);
}

.industry-cards__card:hover .industry-cards__photo {
	transform: scale(1.05);
}


.industry-cards__card:hover .industry-cards__overlay,
.industry-cards__card:focus-within .industry-cards__overlay {
	opacity: 1;
}

.industry-cards__card:hover .industry-cards__desc,
.industry-cards__card:hover .industry-cards__cta,
.industry-cards__card:focus-within .industry-cards__desc,
.industry-cards__card:focus-within .industry-cards__cta {
	opacity: 1;
}

@media (max-width: 64rem) { 
	.industry-cards__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 48rem) { 
	.industry-cards__inner {
		gap: 5.6rem;
	}
	.industry-cards__grid {
		grid-template-columns: 1fr; 
		gap: 1.6rem;
	}
	.industry-cards__card {
		aspect-ratio: 343 / 424; 
	}
	
	.industry-cards__overlay,
	.industry-cards__desc,
	.industry-cards__cta {
		opacity: 1;
	}
	.industry-cards__heading h2,
	.industry-cards__heading .h2,
	.industry-cards__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	.industry-cards__tagline {
		font-size: var(--tagline-xs);
		line-height: var(--leading-tagline-xs);
		letter-spacing: var(--tracking-tagline-xs);
	}
	.industry-cards__title {
		top: 1.6rem;
		left: 1.6rem;
		right: 1.6rem;
		font-size: var(--text-base);
		line-height: var(--leading-base);
	}
}


.capability-banner {
	position: relative;
}

.capability-banner__copy {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	max-width: 84rem; 
}

.capability-banner__tagline {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
	color: var(--text-accent);
}

.capability-banner__heading h2,
.capability-banner__heading .h2,
.capability-banner__heading p {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-4xl); 
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.capability-banner__heading strong {
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.capability-banner__intro {
	max-width: 62rem; 
}

.capability-banner__intro p {
	margin: 0 0 1.2rem;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400);
}

.capability-banner__intro p:last-child {
	margin-bottom: 0;
}

.capability-banner__cta {
	margin-top: 0.8rem;
}


.capability-banner.has-outcomes .capability-banner__copy {
	max-width: none; 
}

.capability-banner.has-outcomes .capability-banner__heading {
	
	max-width: 104rem;
}

.capability-banner__outcomes {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 26.1rem)); 
	column-gap: 7.5rem;
	row-gap: 4.8rem;
	align-items: end;
	margin: 4.5rem 0 4.1rem; 
	padding: 0;
	list-style: none;
}

.capability-banner__outcome {
	margin: 0;
	padding-bottom: 1.3rem; 
	border-bottom: 0.1rem solid color-mix(in srgb, var(--foundation-200) 41%, transparent);
}

.capability-banner__outcome-result {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-xl);
	line-height: var(--leading-xl);
	letter-spacing: var(--tracking-xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
	white-space: pre-line; 
}

.capability-banner__outcome-company {
	margin: var(--leading-xl) 0 0; 
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	letter-spacing: var(--tracking-base);
	font-weight: var(--fontWeightBold);
	color: var(--foundation-600);
}


.capability-banner__media {
	position: relative;
	margin-top: 8rem; 
	width: 100%;
	height: 46vw; 
	max-height: 68rem; 
	overflow: hidden;
}

.capability-banner.has-outcomes .capability-banner__media {
	margin-top: 12rem; 
}

@media (max-width: 64rem) { 
	.capability-banner__outcomes {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.capability-banner__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	
	object-position: center calc(50% + var(--parallax-y, 0%));
	transform: rotate(var(--img-rotate, 0deg)) scaleX(var(--img-flip, 1)); 
	will-change: object-position;
}


@media (max-width: 48rem) { 
	.capability-banner__media {
		margin-top: 6rem;
		height: 50rem; 
		max-height: none;
	}
	.capability-banner__img { 
		object-position: center;
	}
	.capability-banner__heading h2,
	.capability-banner__heading .h2,
	.capability-banner__heading p {
		font-size: var(--text-3xl); 
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	.capability-banner__tagline {
		font-size: var(--tagline-xs);
		line-height: var(--leading-tagline-xs);
		letter-spacing: var(--tracking-tagline-xs);
	}
	
	.capability-banner__cta .btn {
		display: flex;
		width: 100%;
		justify-content: center;
	}
	
	.capability-banner__outcomes {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 3.2rem;
		margin: 1.1rem 0 0.4rem; 
	}
	.capability-banner.has-outcomes .capability-banner__media {
		margin-top: 6rem;
	}
}


.stats.spread .stats__inner {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: 2.4rem;
	align-items: start;
}

.stats.spread .stats__headline {
	grid-column: 1 / span 5;
	position: sticky;
	top: 14rem; 
}

.stats.spread .stats__grid {
	grid-column: 7 / span 6;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	row-gap: 16rem;
}


@media (min-width: 64.0625rem) {
	.home-page .stats.spread .stats__grid {
		row-gap: 8rem;
	}
}

@media (max-width: 64rem) { 
	.stats.spread .stats__inner {
		display: flex;
		flex-direction: column;
		gap: 8rem;
	}
	.stats.spread .stats__headline {
		position: static;
	}
	.stats.spread .stats__grid {
		row-gap: 8rem;
	}
}


@media (max-width: 48rem) { 
	.stats.spread .stats__inner {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 1.6rem;
		align-items: start;
	}
	.stats.spread .stats__headline {
		grid-column: 1;
		position: sticky;
		top: 8rem; 
		max-width: none;
	}
	.stats.spread .stats__grid {
		grid-column: 2;
		grid-template-columns: minmax(0, 1fr);
		row-gap: 6.4rem;
	}
}


.awards {
	position: relative;
}

.awards__inner {
	display: flex;
	flex-direction: column;
	gap: 8rem;
}

.awards__headline {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1.6rem;
	max-width: 72rem;
	margin: 0 auto;
	text-align: center;
}

.awards__tagline {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
	color: var(--text-accent);
}

.awards__heading h2,
.awards__heading .h2,
.awards__heading p {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-3xl);
	line-height: var(--leading-3xl);
	letter-spacing: var(--tracking-3xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.awards__heading strong {
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.awards__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	row-gap: 5.6rem;
	column-gap: 2.4rem;
}

.awards__item {
	display: flex;
	align-items: center;
	justify-content: space-between; 
	gap: 1.6rem;
	max-width: 48rem; 
	width: 100%;
	margin-inline: auto;
}

.awards__item:last-child:nth-child(odd) {
	grid-column: 1 / -1;
}

.awards__laurel {
	flex: none;
	width: 4.4rem;
	height: 8.6rem;
}

.awards__laurel--right {
	transform: scaleX(-1);
}

.awards__body {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.8rem;
	text-align: center;
	min-width: 0;
}


.awards__logo {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: 20rem;
}
.awards__logo img {
	display: block;
	width: auto;
	height: auto;
	max-height: 2rem;
	max-width: 20rem;
	object-fit: contain;
	opacity: 0; 
}
.awards__logo::after {
	content: "";
	position: absolute;
	inset: 0;
	background-color: var(--foundation-400); 
	-webkit-mask: var(--awards-logo) center / contain no-repeat;
	mask: var(--awards-logo) center / contain no-repeat;
	pointer-events: none;
}

@supports not ((-webkit-mask: url("#")) or (mask: url("#"))) {
	.awards__logo img { opacity: 1; }
	.awards__logo::after { display: none; }
}

.awards__title {
	margin: 0;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.awards__years {
	margin: 0;
	display: flex;
	gap: 0.9rem;
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400); 
}

@media (max-width: 64rem) { 
	.awards__grid {
		grid-template-columns: 1fr;
		row-gap: 4rem;
	}
	.awards__item:last-child:nth-child(odd) {
		grid-column: auto;
	}
}

@media (max-width: 48rem) { 
	.awards__inner {
		gap: 5.6rem;
	}
	.awards__heading h2,
	.awards__heading .h2,
	.awards__heading p {
		font-size: var(--text-2xl);
		line-height: var(--leading-2xl);
	}
	.awards__laurel {
		width: 3.2rem;
		height: 6.3rem;
	}
	.awards__item {
		gap: 1.6rem;
	}
}



.call-to-action.announcement {
	position: relative;
}

.cta-announcement__card {
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	align-items: center;
	min-height: 47rem;
	padding: 8rem 3.2rem 0; 
	border-radius: 0.8rem;
	overflow: hidden;
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
	
	background:
		radial-gradient(90% 130% at 2% -10%, color-mix(in srgb, var(--azure-600) 55%, transparent), transparent 55%),
		radial-gradient(70% 110% at 34% -25%, color-mix(in srgb, var(--signal-teal-600) 42%, transparent), transparent 55%),
		radial-gradient(85% 120% at 104% 42%, color-mix(in srgb, var(--azure-600) 26%, transparent), transparent 60%),
		linear-gradient(158deg, #0b2338 0%, #08172c 55%, #060f20 100%);
}


.cta-announcement__globe {
	position: absolute;
	left: 50%;
	top: 20%;
	transform: translateX(-50%);
	width: 108%;
	max-width: none;
	aspect-ratio: 1 / 1; 
	pointer-events: none;
	z-index: 0;
	mix-blend-mode: plus-lighter; 
	opacity: 0.9;
}


.cta-announcement__card.has-wave {
	justify-content: center;
	min-height: 55rem; 
	padding-bottom: 8rem;
}
.cta-announcement__wave {
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	min-height: 100%;
	aspect-ratio: 16 / 10;
	transform: translateY(-50%);
	pointer-events: none;
	z-index: 0;
}

.cta-announcement__content {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1.2rem;
	text-align: center;
	max-width: 76rem;
}


.cta-announcement__badge {
	display: block;
	width: 32rem;
	max-width: 100%;
	height: auto;
	margin-bottom: 5.5rem; 
}

.cta-announcement__heading {
	margin: 0;
	font-size: var(--text-2xl);
	line-height: var(--leading-2xl);
	letter-spacing: var(--tracking-2xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.cta-announcement__sub {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400);
}

.cta-announcement__cta {
	margin-top: 2.4rem; 
}

.cta-announcement__cta .btn.pill {
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
}

@media (max-width: 48rem) { 
	
	.cta-announcement__card {
		margin-left: 1.6rem;
		margin-right: 1.6rem;
		min-height: 46rem;
		padding: 6rem 2.4rem 0;
	}
	.cta-announcement__heading {
		font-size: var(--text-xl); 
		line-height: var(--leading-xl);
	}
	
	.cta-announcement__globe {
		width: 150%;
		top: 52%; 
	}
	.cta-announcement__card.has-wave { min-height: 46rem; padding-bottom: 6rem; }
	.cta-announcement__badge { width: 24rem; margin-bottom: 2.4rem; }
}



.customer-stories.home .customer-stories__head {
	justify-content: space-between;
}
.customer-stories.home .customer-stories__headline {
	flex: 0 1 auto;
	max-width: 84rem; 
}


.customer-stories.home .customer-stories__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 2.4rem;
	row-gap: 8rem;
}

.customer-stories.home .customer-stories__card--featured {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: 2fr 1fr;
	column-gap: 2.4rem;
	align-items: start;
}

.customer-stories.home .customer-stories__card--featured .customer-stories__media {
	aspect-ratio: 845 / 445;
}

.customer-stories.home .customer-stories__card--featured .customer-stories__copy {
	padding-top: 0;
}

.customer-stories.home .customer-stories__card--featured .customer-stories__title {
	font-size: var(--text-2xl);
	line-height: var(--leading-2xl);
	max-width: none;
}

.customer-stories.home .customer-stories__desc p {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400);
}


.customer-stories.home .customer-stories__card:not(.customer-stories__card--featured) {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.customer-stories.home .customer-stories__card:not(.customer-stories__card--featured) .customer-stories__media {
	aspect-ratio: 411 / 244;
}

@media (max-width: 64rem) { 
	.customer-stories.home .customer-stories__grid {
		grid-template-columns: 1fr;
		row-gap: 4.8rem;
	}
	.customer-stories.home .customer-stories__card--featured {
		grid-template-columns: 1fr;
		row-gap: 2.4rem;
	}
}



.work-spotlight__media {
	position: relative;
}

.work-spotlight__swap {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	transition: opacity 0.45s ease;
}

.work-spotlight__swap.is-active {
	opacity: 1;
}


.work-spotlight.plain-image .work-spotlight__media {
	border: 0;
	border-radius: 0;
	background: none;
	overflow: visible;
}


@media (min-width: 64.0625rem) {
	.work-spotlight.plain-image .work-spotlight__media {
		aspect-ratio: auto;
		align-self: stretch;
		min-height: 37.4rem;
	}
}

.work-spotlight.plain-image .work-spotlight__media::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 58rem;
	height: 58rem;
	max-width: 120%;
	border-radius: 50%;
	background: radial-gradient(circle, color-mix(in srgb, var(--azure-600) 22%, transparent), transparent 68%);
	pointer-events: none;
}

.work-spotlight.plain-image .work-spotlight__swap {
	inset: auto;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: min(36rem, 92%); 
	height: auto;
	object-fit: contain;
	padding: 0;
}


.work-spotlight.plain-image .work-spotlight__swap--wide {
	left: auto;
	right: 2.1rem;
	transform: translateY(-50%);
	width: calc(100% - 2.1rem);
}


@media (max-width: 64rem) {
	.work-spotlight.plain-image .work-spotlight__swap--wide {
		left: 50%;
		right: auto;
		transform: translate(-50%, -50%);
		width: 100%;
	}
}


.work-spotlight.plain-image .work-spotlight__media:has(.work-spotlight__swap--wide.is-active)::before {
	display: none;
}


@media (max-width: 48rem) {
	.work-spotlight.plain-image .work-spotlight__media:has(.work-spotlight__swap--wide) {
		--map-unit: calc((100vw - 4rem) / 685.25);
		width: 100vw;
		max-width: none;
		
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		aspect-ratio: auto;
		height: calc(var(--map-unit) * 588);
		overflow: hidden;
	}

	.work-spotlight.plain-image .work-spotlight__swap--wide {
		left: calc(2rem - var(--map-unit) * 68);
		top: 0;
		transform: none;
		width: calc(var(--map-unit) * 798.75);
		max-width: none; 
	}
}



.work-spotlight.plain-image .work-spotlight__inner {
	gap: 6.4rem;
}

.work-spotlight.plain-image .work-spotlight__head {
	align-items: flex-start;
}

.work-spotlight.plain-image .work-spotlight__item-title {
	color: var(--foundation-500);
	transition: color 0.3s ease;
}

.work-spotlight.plain-image .work-spotlight__item.is-open .work-spotlight__item-title {
	color: var(--white);
}

.work-spotlight.plain-image .accordion-toggle {
	width: 2rem;
	height: 2rem;
	margin-top: 0.4rem;
	border: 0;
	background: none;
	background-color: var(--foundation-500);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M8.33333 15L7.15833 13.825L10.975 10L7.15833 6.175L8.33333 5L13.3333 10L8.33333 15Z' fill='%23000'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M8.33333 15L7.15833 13.825L10.975 10L7.15833 6.175L8.33333 5L13.3333 10L8.33333 15Z' fill='%23000'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: background-color 0.3s ease;
}

.work-spotlight.plain-image .accordion-toggle::before,
.work-spotlight.plain-image .accordion-toggle::after {
	display: none;
}

.work-spotlight.plain-image .work-spotlight__item.is-open .accordion-toggle {
	background-color: var(--white);
}


.leadership-carousel {
	position: relative;
}

.leadership-carousel__inner {
	display: flex;
	flex-direction: column;
	gap: 6.4rem;
}

.leadership-carousel__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 2.4rem;
}

.leadership-carousel__headline {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	max-width: 63rem;
}

.leadership-carousel__tagline {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
	color: var(--text-accent);
}

.leadership-carousel__heading h2,
.leadership-carousel__heading .h2,
.leadership-carousel__heading p {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.leadership-carousel__heading strong {
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.leadership-carousel__intro p {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400);
	max-width: 63rem;
}

.leadership-carousel__cta {
	flex: none;
}


.leadership-carousel__cta--below {
	display: none;
}


.leadership-carousel__dots.swiper-pagination {
	position: static;
	display: none;
	width: auto;
	margin: 0; 
	--swiper-pagination-color: var(--white);
	--swiper-pagination-bullet-inactive-color: var(--white);
	--swiper-pagination-bullet-inactive-opacity: 0.25;
	--swiper-pagination-bullet-size: 0.8rem;
}


.leadership-carousel__viewport {
	width: 100%;
	overflow: hidden;
}

.leadership-carousel__slide {
	width: 41rem;
	display: flex;
	flex-direction: column;
	gap: 0.8rem;
}

.leadership-carousel__frame {
	position: relative;
	aspect-ratio: 410 / 514;
	border-radius: 0.8rem;
	border: 0.1rem solid rgba(255, 255, 255, 0.08);
	overflow: hidden;
	
	background:
		url("https://144479753.fs1.hubspotusercontent-eu1.net/hubfs/144479753/raw_assets/public/entelect_corporate/images/leadership/card-backdrop.png") center / cover no-repeat,
		radial-gradient(120% 90% at 50% 10%, #0d3c46 0%, #092530 55%, #071a22 100%);
}


.leadership-carousel__frame.is-expandable {
	cursor: pointer;
}

.leadership-carousel__panel {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
	padding: 2.8rem;
	background: color-mix(in srgb, var(--foundation-950) 92%, transparent);
	backdrop-filter: blur(1.2rem);
	-webkit-backdrop-filter: blur(1.2rem);
	transform: translateY(100%);
	visibility: hidden;
	transition: transform 0.4s ease, visibility 0s linear 0.4s;
}


@media (hover: hover) and (pointer: fine) {
	.leadership-carousel__frame.is-expandable:hover .leadership-carousel__panel {
		transform: translateY(0);
		visibility: visible;
		transition: transform 0.4s ease, visibility 0s linear 0s;
	}
}

.leadership-carousel__frame.is-open .leadership-carousel__panel {
	transform: translateY(0);
	visibility: visible;
	transition: transform 0.4s ease, visibility 0s linear 0s;
}


.leadership-carousel__bio {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 255, 255, 0.3) transparent;
}


.leadership-carousel__bio.has-more {
	-webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 4.8rem), transparent);
	mask-image: linear-gradient(to bottom, #000 calc(100% - 4.8rem), transparent);
}

.leadership-carousel__bio::-webkit-scrollbar {
	width: 0.6rem;
}

.leadership-carousel__bio::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.25);
	border-radius: var(--radius-max);
}

.leadership-carousel__bio p {
	margin: 0 0 1.2rem;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}

.leadership-carousel__bio p:last-child {
	margin-bottom: 0;
}

.leadership-carousel__socials {
	display: flex;
	gap: 1.2rem;
	flex: none;
	margin-top: auto;
}

.leadership-carousel__social {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
	border-radius: var(--radius-max);
	background: rgba(255, 255, 255, 0.1);
	color: var(--white);
	flex: none;
	transition: background 0.2s ease;
}

.leadership-carousel__social:hover {
	background: rgba(255, 255, 255, 0.2);
}

.leadership-carousel__social svg {
	width: 1.8rem;
	height: 1.8rem;
}


.leadership-carousel__meta {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	margin-top: 1.6rem;
}

.leadership-carousel__meta-text {
	min-width: 0;
}


.leadership-carousel__chev {
	display: none;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 3.2rem;
	height: 3.2rem;
	margin-left: auto;
	border-radius: var(--radius-max);
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
	color: var(--white);
	transition: transform 0.4s ease, background 0.2s ease;
}


.leadership-carousel__chev svg {
	width: 1.6rem;
	height: 1.6rem;
}

@media (hover: none), (pointer: coarse) {
	.leadership-carousel__chev {
		display: inline-flex;
	}
}


.leadership-carousel__frame.is-open ~ .leadership-carousel__meta .leadership-carousel__chev,
.leadership-carousel__slide:has(.is-open) .leadership-carousel__chev {
	transform: rotate(180deg);
	background: rgba(255, 255, 255, 0.14);
}

.leadership-carousel__photo {
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	height: 100%;
	width: auto;
	max-width: none;
	object-fit: contain;
	object-position: bottom center;
}

.leadership-carousel__name {
	margin: 0;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.leadership-carousel__role {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}


.leadership-carousel__controls {
	display: flex;
	align-items: center;
	gap: 4.8rem;
}


.leadership-carousel__controls .leadership-carousel__scrollbar.swiper-scrollbar {
	position: relative;
	left: auto;
	right: auto;
	top: auto;
	bottom: auto;
	flex: 1;
	width: auto;
	height: 0.2rem;
	border-radius: 999.9rem;
	background: rgba(255, 255, 255, 0.12);
}

.leadership-carousel__scrollbar .swiper-scrollbar-drag {
	height: 100%;
	border-radius: 999.9rem;
	background: var(--foundation-300);
	cursor: grab;
}

.leadership-carousel__nav {
	display: flex;
	gap: 1.6rem;
}

.leadership-carousel__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 4.8rem;
	height: 4.8rem;
	padding: 0;
	border-radius: 50%;
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.05);
	color: var(--white);
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
}

.leadership-carousel__arrow:hover {
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.2);
}

.leadership-carousel__arrow.swiper-button-disabled {
	opacity: 0.35;
	cursor: default;
	pointer-events: none;
}

@media (max-width: 64rem) { 
	.leadership-carousel__head {
		flex-direction: column;
		align-items: flex-start;
	}
	.leadership-carousel__slide {
		width: 32rem;
	}
}

@media (max-width: 48rem) { 
	.leadership-carousel__inner {
		gap: 4.8rem;
	}
	.leadership-carousel__heading h2,
	.leadership-carousel__heading .h2,
	.leadership-carousel__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	.leadership-carousel__tagline {
		font-size: var(--tagline-xs);
		line-height: var(--leading-tagline-xs);
		letter-spacing: var(--tracking-tagline-xs);
	}
	.leadership-carousel__slide {
		width: 27rem;
	}
	
	.leadership-carousel__cta--head { display: none; }
	.leadership-carousel__cta--below {
		display: block;
		align-self: stretch;
	}
	.leadership-carousel__cta--below .btn {
		display: flex;
		width: 100%;
		justify-content: center;
	}
	.leadership-carousel__scrollbar { display: none; }
	.leadership-carousel__dots.swiper-pagination {
		display: flex;
		align-items: center;
	}
	.leadership-carousel__controls {
		gap: 2.4rem;
		justify-content: space-between;
		align-items: center;
	}
}


.testimonial-slider.split .testimonial-slider__split {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: 2.4rem;
	align-items: start;
}

.testimonial-slider.split .testimonial-slider__intro-col {
	grid-column: 1 / span 4;
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	text-align: left; 
}

.testimonial-slider.split .testimonial-slider__tagline {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
	color: var(--text-accent);
}

.testimonial-slider.split .testimonial-slider__heading {
	margin: 0;
	text-align: left; 
}

.testimonial-slider.split .testimonial-slider__heading h2,
.testimonial-slider.split .testimonial-slider__heading .h2,
.testimonial-slider.split .testimonial-slider__heading p {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.testimonial-slider.split .testimonial-slider__heading strong {
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.testimonial-slider.split .testimonial-slider__quote-col {
	grid-column: 5 / span 8;
	display: flex;
	flex-direction: column;
	gap: 4.8rem;
	padding-top: 22rem; 
	min-width: 0; 
}


.testimonial-slider.split .swiper-slide {
	display: block;
	padding: 0;
}

.testimonial-slider.split .testimonial {
	width: 100%;
	max-width: none;
	margin: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start; 
	gap: 6.4rem; 
	text-align: left;
}

.testimonial-slider.split .testimonial__quote,
.testimonial-slider.split .testimonial__quote p {
	margin: 0;
	font-size: var(--text-2xl);
	line-height: 1.4;
	font-weight: var(--fontWeightLight);
	font-style: italic;
	color: var(--foundation-200);
}

.testimonial-slider.split .testimonial__profile {
	display: flex;
	flex-direction: row; 
	align-items: center;
	gap: 1.6rem;
	margin: 0;
}

.testimonial-slider.split .testimonial__photo {
	width: 4.8rem;
	height: 4.8rem;
	border-radius: 50%;
	overflow: hidden;
	background: var(--white);
	flex: none;
}

.testimonial-slider.split .testimonial__photo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.testimonial-slider.split .testimonial__person {
	display: flex;
	flex-direction: column;
	align-items: flex-start; 
	gap: 0.2rem;
}

.testimonial-slider.split .testimonial__name {
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.testimonial-slider.split .testimonial__role {
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-400);
}


.testimonial-slider.split .testimonial-slider__nav {
	display: flex;
	justify-content: flex-end;
	gap: 1.6rem;
	margin-top: -4.8rem; 
}

.testimonial-slider.split .testimonial-slider__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 4.8rem;
	height: 4.8rem;
	padding: 0;
	border-radius: 50%;
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.05);
	color: var(--white);
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
}

.testimonial-slider.split .testimonial-slider__arrow:hover {
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.2);
}

@media (max-width: 64rem) { 
	.testimonial-slider.split .testimonial-slider__split {
		display: flex;
		flex-direction: column;
		gap: 4.8rem;
		
		align-items: stretch;
	}
	.testimonial-slider.split .testimonial-slider__quote-col {
		padding-top: 0;
	}
	.testimonial-slider.split .testimonial__quote,
	.testimonial-slider.split .testimonial__quote p {
		font-size: var(--text-xl);
		line-height: var(--leading-xl);
	}
	.testimonial-slider.split .testimonial {
		gap: 4rem;
	}
	.testimonial-slider.split .testimonial-slider__nav {
		margin-top: 0;
	}
}























































.about-carousel {
	position: relative;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	overflow: hidden;
}


.about-carousel__viewport {
	position: relative;
	width: 100%;
	aspect-ratio: 9 / 5;
	overflow: hidden;
}

.about-carousel__swiper {
	width: 100%;
	height: 100%;
}

.about-carousel__swiper .swiper-wrapper {
	height: 100%;
}

.about-carousel__slide {
	width: 100%;
	height: 100%;
}

.about-carousel__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}


.about-carousel__gradient {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 33.7rem;
	pointer-events: none;
	z-index: 2;
	background: linear-gradient(
		180deg,
		var(--foundation-950) 0%,
		color-mix(in srgb, var(--foundation-950) 93%, transparent) 28%,
		color-mix(in srgb, var(--foundation-950) 75%, transparent) 55%,
		transparent 100%
	);
}


.about-carousel__buttons {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding-inline: 8rem;
	pointer-events: none;
	z-index: 3;
}

.about-carousel__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 1.6rem;
	border-radius: var(--radius-max);
	border: 0.1rem solid color-mix(in srgb, var(--foundation-950) 10%, transparent);
	background: color-mix(in srgb, var(--foundation-950) 25%, transparent);
	backdrop-filter: blur(3rem);
	-webkit-backdrop-filter: blur(3rem);
	cursor: pointer;
	pointer-events: auto;
	transition: background 0.25s ease;
}

.about-carousel__btn:hover {
	background: color-mix(in srgb, var(--foundation-950) 35%, transparent);
}

.about-carousel__btn img {
	display: block;
	width: 1.4rem;
	height: 1.4rem;
}

.about-carousel__btn.swiper-button-disabled {
	opacity: 0.35;
	cursor: default;
}


.about-carousel__pagination.swiper-pagination {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 5.6rem;
	width: auto;
	display: flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.8rem;
	border-radius: var(--radius-max);
	border: 0.1rem solid color-mix(in srgb, var(--foundation-950) 15%, transparent);
	background: color-mix(in srgb, var(--foundation-950) 15%, transparent);
	backdrop-filter: blur(2rem);
	-webkit-backdrop-filter: blur(2rem);
	z-index: 3;
	--swiper-pagination-bullet-size: 0.6rem;
	--swiper-pagination-color: #fff;
	--swiper-pagination-bullet-inactive-color: #fff;
	--swiper-pagination-bullet-inactive-opacity: 0.2;
}

.about-carousel__pagination.swiper-pagination .swiper-pagination-bullet {
	margin: 0;
}


@media (max-width: 48rem) {
	.about-carousel__viewport {
		aspect-ratio: 1 / 1;
	}
	.about-carousel__gradient {
		height: 12rem;
	}
	.about-carousel__buttons {
		padding-inline: 1.6rem;
	}
	.about-carousel__btn {
		padding: 1rem;
	}
	.about-carousel__btn img {
		width: 1.2rem;
		height: 1.2rem;
	}
	.about-carousel__pagination.swiper-pagination {
		bottom: 2.4rem;
	}
}


@media (prefers-reduced-motion: reduce) {
	.about-carousel__btn {
		transition: none;
	}
}



.intro-statement {
	position: relative;
	color: var(--white);
}

.intro-statement .container {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.intro-statement__text {
	max-width: 104.2rem;
	text-align: center;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	
	background: linear-gradient(to right, var(--azure-600) 7%, var(--signal-teal-600) 49%, var(--codebase-green-600) 118%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}


.intro-statement__text .reveal-line__inner {
	background: linear-gradient(to right, var(--azure-600) 7%, var(--signal-teal-600) 49%, var(--codebase-green-600) 118%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}


.intro-statement__text:has(.reveal-line) {
	background: none;
	-webkit-background-clip: border-box;
	background-clip: border-box;
}


.intro-statement .reveal-line {
	contain: paint;
}


@media (max-width: 23.4375rem) {
	.intro-statement__text {
		overflow-wrap: break-word;
		word-break: break-word;
	}
}



.location-map {
	position: relative;
	color: var(--white);
}

.location-map .container {
	position: relative;
	z-index: 1;
}


.location-map__head {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2rem;
	max-width: 84.7rem;
	margin: 0 auto;
	text-align: center;
}

.location-map__tagline {
	margin: 0;
	
	margin-bottom: 0.4rem;
	font-family: var(--primaryFont);
	font-weight: var(--fontWeightRegular);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
	color: var(--neon-pulse-500);
}

.location-map__heading {
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	font-weight: var(--fontWeightMedium);
	letter-spacing: var(--tracking-4xl);
	color: var(--white);
}

.location-map__heading h1,
.location-map__heading h2,
.location-map__heading h3,
.location-map__heading p {
	margin: 0;
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	color: inherit;
}


.location-map__heading strong,
.location-map__heading b {
	font-weight: inherit;
	color: var(--white);
}

.location-map__body {
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}

.location-map__body p {
	margin: 0;
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	color: inherit;
}


.location-map__map {
	position: relative;
	height: 55.9rem;
	margin-top: 8rem;
}


.location-map__glow {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 94.8rem;
	height: 55.9rem;
	max-width: none;
	background: radial-gradient(ellipse, color-mix(in srgb, var(--signal-teal-600) 18%, transparent), transparent 70%);
	z-index: 0;
	pointer-events: none;
}


.location-map__plot {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	height: 100%;
	aspect-ratio: 1140 / 559;
	z-index: 1;
}


.location-map__world {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none; 
}


.location-map__dot {
	position: absolute;
	transform: translate(-50%, -50%);
	width: 0.8rem;
	height: 0.8rem;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #bfc2cc; 
	cursor: pointer;
	
	transition: width 0.2s ease, height 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
	z-index: 2;
}

.location-map__dot.is-active {
	width: 1.6rem;
	height: 1.6rem;
	background: var(--neon-pulse-600);
	
	box-shadow: 0 0 1.6rem 0.1rem color-mix(in srgb, var(--neon-pulse-500) 40%, transparent);
	
	z-index: 3;
}


.location-map__dot:hover,
.location-map__dot:focus-visible,
.location-map__dot.is-open {
	z-index: 4;
}


.location-map__dot.is-active::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	border-radius: 50%;
	border: 0.1rem solid var(--neon-pulse-500);
	transform: translate(-50%, -50%) scale(1);
	opacity: 0.8;
	z-index: -1;
	pointer-events: none;
	animation: location-map-ping 2.4s ease-out infinite;
}

@keyframes location-map-ping {
	0%   { transform: translate(-50%, -50%) scale(1);   opacity: 0.8; }
	100% { transform: translate(-50%, -50%) scale(4.5); opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
	.location-map__dot.is-active::before { animation: none; }
	.location-map__dot { transition: none; }
}


.location-map__tooltip {
	position: absolute;
	z-index: 1; 
	bottom: calc(100% + 1rem);
	left: 50%;
	
	transform: translateX(calc(-50% + var(--tip-shift, 0px))) translateY(0.4rem);
	background: var(--neon-pulse-600);
	color: var(--foundation-900);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	padding: 0.4rem 1.2rem;
	border-radius: 0.4rem;
	white-space: nowrap;
	box-shadow: 0 0.8rem 0.8rem color-mix(in srgb, var(--foundation-900) 50%, transparent);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s ease, transform 0.2s ease;
}


.location-map__tooltip::after {
	content: "";
	position: absolute;
	top: 100%;
	left: calc(50% - var(--tip-shift, 0px)); 
	transform: translateX(-50%);
	border-left: 1.1rem solid transparent;
	border-right: 1.1rem solid transparent;
	border-top: 1.2rem solid var(--neon-pulse-600);
}


.location-map__dot.is-active .location-map__tooltip {
	opacity: 1;
	transform: translateX(calc(-50% + var(--tip-shift, 0px))) translateY(0);
}


.location-map.is-static .location-map__dot {
	width: 0;
	height: 0;
	background: none;
	box-shadow: none;
	cursor: default;
	pointer-events: none;
	z-index: 3;
}

.location-map.is-static .location-map__dot::before {
	content: none; 
}

.location-map.is-static .location-map__tooltip {
	top: 50%;
	bottom: auto;
	left: 50%;
	transform: translate(calc(-50% + var(--tip-shift, 0px)), calc(-50% + var(--tip-shift-y, 0px)));
	
	padding: 0.3rem 1.1rem;
	border: 0.1rem solid var(--neon-pulse-600);
	border-radius: var(--radius-max);
	background: color-mix(in srgb, var(--foundation-900) 70%, transparent);
	color: var(--white);
	box-shadow: 0 0.8rem 1.6rem color-mix(in srgb, var(--foundation-900) 50%, transparent);
	opacity: 1;
	transition: none; 
}

.location-map.is-static .location-map__tooltip::after {
	content: none; 
}



.location-map__selector {
	display: none;
}

@media (max-width: 48rem) {
	.location-map {
		padding-left: 1.6rem;
		padding-right: 1.6rem;
	}

	.location-map__head {
		gap: 1.2rem;
	}

	.location-map__tagline {
		margin-bottom: 0.4rem;
		font-size: var(--tagline-xs);
		line-height: var(--leading-tagline-xs);
		letter-spacing: var(--tracking-tagline-xs);
	}

	.location-map__heading {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}

	
	.location-map__map {
		width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		height: 31.5rem;
		margin-top: 6.4rem;
		overflow: hidden;
	}

	
	.location-map__glow {
		width: 31.6rem;
		height: 29rem;
	}

	.location-map__plot {
		transform: translateX(calc(-50% - 12.6rem));
	}

	.location-map__dot.is-active {
		width: 1.2rem;
		height: 1.2rem;
	}

	
	.location-map__dot {
		pointer-events: none;
	}

	
	.location-map__selector {
		display: flex;
		gap: 2.8rem;
		overflow-x: auto;
		overflow-y: hidden;
		overscroll-behavior-x: contain;
		scrollbar-width: none;
		margin-top: 1.6rem;
		border-top: 0.1rem solid rgba(255, 255, 255, 0.1);
		border-bottom: 0.1rem solid rgba(255, 255, 255, 0.1);
	}

	.location-map__selector::-webkit-scrollbar {
		display: none;
	}
}


.location-map__chip {
	position: relative;
	flex: none;
	margin: 0;
	padding: 0 0.2rem;
	height: 5.6rem; 
	border: 0;
	background: transparent;
	cursor: pointer;
	font-family: var(--primaryFont);
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-400);
	white-space: nowrap;
	transition: color 0.2s ease;
}

.location-map__chip.is-active {
	color: var(--white);
}


.location-map__chip.is-active::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 0.2rem;
	background-color: var(--text-accent);
}

.location-map__chip:focus-visible {
	outline: 0.2rem solid var(--neon-pulse-500);
	outline-offset: -0.4rem;
}


.rich-text {
	position: relative;
}


.rich-text__body {
	max-width: 82rem;
}

.rich-text.full .rich-text__body {
	max-width: none;
}

.rich-text__body > :first-child {
	margin-top: 0;
}

.rich-text__body > :last-child {
	margin-bottom: 0;
}

.rich-text__body h2 {
	margin-top: 6.4rem;
	margin-bottom: 2.4rem;
	color: var(--white);
	font-size: var(--text-2xl);
	line-height: var(--leading-2xl);
	letter-spacing: var(--tracking-2xl);
	font-weight: var(--fontWeightMedium);
}

.rich-text__body h3 {
	margin-top: 4rem;
	margin-bottom: 1.6rem;
	color: var(--white);
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
}

.rich-text__body p,
.rich-text__body li {
	margin-bottom: 1.6rem;
	color: var(--foundation-300);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	letter-spacing: var(--tracking-base);
}

.rich-text__body ul,
.rich-text__body ol {
	margin: 0 0 1.6rem;
	padding-left: 2.4rem;
}

.rich-text__body li {
	margin-bottom: 0.8rem;
}

.rich-text__body strong {
	color: var(--white);
	font-weight: var(--fontWeightMedium);
}


.rich-text__body a {
	color: var(--neon-pulse-500);
	text-decoration: underline;
	text-underline-offset: 0.2rem;
}

.rich-text__body a:hover {
	color: var(--white);
}

@media (max-width: 48rem) { 
	.rich-text__body h2 {
		margin-top: 4.8rem;
		font-size: var(--text-xl);
		line-height: var(--leading-xl);
		letter-spacing: var(--tracking-xl);
	}
	.rich-text__body h3 {
		margin-top: 3.2rem;
	}
}



.impact-bento {
	position: relative;
	overflow: hidden;
	color: var(--white);
}


.impact-bento__wave {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	display: block;
	width: 100%;
	height: 100%;
	opacity: 0.7;
}

@media (max-width: 48rem) {
	.impact-bento__wave { opacity: 0.5; }
}

.impact-bento .container {
	position: relative;
	z-index: 1;
}

.impact-bento__inner {
	display: flex;
	flex-direction: column;
	gap: 8rem;
}


.impact-bento__headline {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2rem;
	max-width: 63rem;
}

.impact-bento__tagline {
	margin: 0;
	color: var(--neon-pulse-500);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
}

.impact-bento__heading {
	color: var(--foundation-500);
}

.impact-bento__heading h1,
.impact-bento__heading h2,
.impact-bento__heading h3,
.impact-bento__heading .h1,
.impact-bento__heading p {
	margin: 0;
	color: inherit;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
}

.impact-bento__heading strong {
	color: var(--white);
	font-weight: var(--fontWeightMedium);
}

.impact-bento__intro,
.impact-bento__intro p {
	margin: 0;
	color: var(--foundation-300);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	letter-spacing: var(--tracking-base);
	font-weight: var(--fontWeightLight);
}


.impact-bento__grid {
	position: relative;
	width: 100%;
}

.impact-bento__track {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: repeat(2, 1fr);
	grid-auto-flow: column;
	gap: 2.4rem;
	height: 52.9rem;
}

.impact-bento__card:first-child {
	grid-row: 1 / 3;
}


.impact-bento__card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 3.1rem;
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	-webkit-backdrop-filter: blur(4rem);
	backdrop-filter: blur(4rem);
	border-radius: 0.8rem;
	overflow: hidden;
}

.impact-bento__figure {
	margin: 0;
	color: var(--white);
	font-size: var(--text-6xl);
	line-height: var(--leading-6xl);
	letter-spacing: var(--tracking-6xl);
	font-weight: var(--fontWeightLight);
}

.impact-bento__caption {
	color: var(--foundation-300);
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightLight);
}



.impact-bento__cta {
	display: flex;
	
	margin-top: -0.8rem;
}

@media (max-width: 48rem) { 
	.impact-bento__cta {
		margin-top: 4rem;
	}
	
	.impact-bento__cta .btn {
		display: flex;
		flex: 1 1 auto;
		width: 100%;
		justify-content: center;
	}
}

.impact-bento__nav {
	display: none;
}

.impact-bento__navbtn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 4rem;
	height: 4rem;
	flex: none;
	padding: 0;
	border-radius: var(--radius-max);
	background: rgba(255, 255, 255, 0.08);
	border: 0.1rem solid rgba(255, 255, 255, 0.14);
	-webkit-backdrop-filter: blur(1rem);
	backdrop-filter: blur(1rem);
	color: var(--white);
	cursor: pointer;
	transition: background-color 0.2s ease, opacity 0.2s ease;
}

.impact-bento__navbtn:hover {
	background: rgba(255, 255, 255, 0.16);
}

.impact-bento__navbtn svg {
	width: 2rem;
	height: 2rem;
}

.impact-bento__navbtn.swiper-button-disabled {
	opacity: 0.35;
	cursor: default;
}


.impact-bento__dots {
	position: static;
	width: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.6rem;
	--swiper-pagination-color: var(--white);
	--swiper-pagination-bullet-inactive-color: var(--white);
	--swiper-pagination-bullet-inactive-opacity: 0.2;
	--swiper-pagination-bullet-size: 0.8rem;
}


@media (min-width: 48.0625rem) {
	.impact-bento__grid {
		overflow: visible;
	}
	.impact-bento__track {
		transform: none !important;
		height: 52.9rem;
	}
	.impact-bento__card {
		height: auto;
	}
}


@media (max-width: 48rem) {
	.impact-bento__inner {
		gap: 4.8rem;
	}
	.impact-bento__headline {
		max-width: none;
	}
	.impact-bento__heading h1,
	.impact-bento__heading h2,
	.impact-bento__heading h3,
	.impact-bento__heading .h1,
	.impact-bento__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	.impact-bento__tagline {
		font-size: var(--tagline-xs);
		line-height: var(--leading-tagline-xs);
		letter-spacing: var(--tracking-tagline-xs);
	}

	.impact-bento__grid {
		width: 100%;
		min-width: 0;
		overflow: hidden;
	}
	.impact-bento__track {
		display: flex;
		grid-template-columns: none;
		grid-template-rows: none;
		grid-auto-flow: row;
		gap: 0;
		height: auto;
	}
	.impact-bento__card,
	.impact-bento__card:first-child {
		grid-row: auto;
		width: 80%;
		max-width: 30rem;
		width: 30.2rem;
		height: 42.4rem;
		padding: 2.4rem 2.4rem 3.2rem;
	}

	.impact-bento__nav {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		max-width: 34.3rem;
		margin: 0 auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	.impact-bento__card,
	.impact-bento__navbtn {
		transition: none;
	}
}



.certifications {
	position: relative;
	color: var(--white);
}

.certifications .container {
	position: relative;
	z-index: 1;
}

.certifications__inner {
	display: flex;
	align-items: flex-start;
	gap: 2.4rem;
}


.certifications__header {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	max-width: 48rem;
}

.certifications__tagline {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	font-weight: var(--fontWeightRegular);
	text-transform: uppercase;
	color: var(--text-accent);
}

.certifications__heading h1,
.certifications__heading h2,
.certifications__heading .h2,
.certifications__heading h3,
.certifications__heading p {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-500);
}

.certifications__heading strong {
	color: var(--white);
	font-weight: inherit;
}


.certifications__list {
	flex: 0 0 62.8rem;
	max-width: 62.8rem;
}

.certifications__item {
	border-bottom: 0.1rem solid rgba(255, 255, 255, 0.1);
}

.certifications__item:first-child {
	border-top: 0.1rem solid rgba(255, 255, 255, 0.1);
}


.certifications__head {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 2.4rem;
	padding: 3.2rem 0;
	background: none;
	border: 0;
	cursor: pointer;
	text-align: left;
	color: inherit;
}

.certifications__title {
	flex: 1 1 auto;
	min-width: 0;
	font-size: var(--text-xl);
	line-height: var(--leading-xl);
	letter-spacing: var(--tracking-xl);
	font-weight: var(--fontWeightMedium);
	color: var(--foundation-300);
}

.certifications__item.is-open .certifications__title {
	color: var(--white);
}


.certifications__title {
	transition: color 0.2s ease;
}
.certifications__head:hover .certifications__title,
.certifications__head:focus-visible .certifications__title {
	color: var(--white);
}
.certifications__head .accordion-toggle {
	transition: background-color 0.2s ease, border-color 0.2s ease;
}
.certifications__head:hover .accordion-toggle,
.certifications__head:focus-visible .accordion-toggle {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.2);
}


.certifications__panel {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.35s ease;
}

.certifications__item.is-open .certifications__panel {
	grid-template-rows: 1fr;
}

.certifications__panel-inner {
	overflow: hidden;
	min-height: 0;
	display: flex;
	flex-direction: column;
	gap: 3.2rem;
	padding-bottom: 0;
}


.certifications__item.is-open .certifications__panel-inner {
	padding-bottom: 3.2rem;
}

.certifications__statement p {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}


.certifications__cta {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	padding: 1.1rem 2rem;
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
	border-radius: var(--radius-max);
	cursor: pointer;
	-webkit-backdrop-filter: blur(1rem);
	backdrop-filter: blur(1rem);
	transition: background-color 0.2s ease, border-color 0.2s ease;
}
.certifications__cta:hover,
.certifications__cta:focus-visible {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.2);
}


.certifications__modal {
	position: fixed;
	inset: 0;
	z-index: 1000;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 4rem 2rem;
}
.certifications__modal.is-open { display: flex; }

.certifications__modal-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(19, 25, 45, 0.8);
	-webkit-backdrop-filter: blur(1rem);
	backdrop-filter: blur(1rem);
}

.certifications__modal-card {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	width: min(64rem, 100%);
	max-height: 100%;
	
	background: color-mix(in srgb, var(--foundation-950) 80%, transparent);
	-webkit-backdrop-filter: blur(4rem);
	backdrop-filter: blur(4rem);
	border: 0.1rem solid rgba(255, 255, 255, 0.08);
	border-radius: var(--radius-base);
	overflow: hidden;
	box-shadow: var(--shadow-2xl);
}

.certifications__modal-close {
	position: absolute;
	top: 1.6rem;
	right: 1.6rem;
	z-index: 3;
	width: 4rem;
	height: 4rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--white);
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
	border-radius: var(--radius-max);
	cursor: pointer;
	-webkit-backdrop-filter: blur(1rem);
	backdrop-filter: blur(1rem);
	transition: background-color 0.2s ease;
}
.certifications__modal-close:hover { background: rgba(255, 255, 255, 0.12); }
.certifications__modal-close svg { width: 1.3rem; height: 1.3rem; }


.certifications__modal-swiper {
	flex: 1 1 auto;
	min-height: 0;
	width: 100%;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.certifications__modal-swiper .swiper-wrapper { height: auto; flex: 1 1 auto; min-height: 0; }
.certifications__modal-swiper .swiper-slide { height: auto; display: flex; flex-direction: column; box-sizing: border-box; }
.certifications__slide-inner {
	height: auto;
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	padding: 4rem;
	box-sizing: border-box;
	
	scrollbar-width: thin;
	scrollbar-color: color-mix(in srgb, var(--white) 30%, transparent) transparent;
}
.certifications__slide-inner::-webkit-scrollbar { width: 0.6rem; }
.certifications__slide-inner::-webkit-scrollbar-thumb {
	background: color-mix(in srgb, var(--white) 25%, transparent);
	border-radius: var(--radius-max);
}

.certifications__slide-head {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 1.6rem;
	padding-right: 4rem; 
}

.certifications__slide-meta {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	min-width: 0;
}
.certifications__avatar {
	width: 6.4rem;
	height: 6.4rem;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--white);
	border-radius: 0.8rem;
	overflow: hidden;
}
.certifications__avatar img { max-width: 72%; max-height: 72%; object-fit: contain; }
.certifications__slide-title {
	margin: 0;
	font-size: var(--text-xl);
	line-height: var(--leading-xl);
	letter-spacing: var(--tracking-xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}
.certifications__slide-url {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	width: fit-content;
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}
.certifications__slide-url-icon {
	display: inline-flex;
	color: var(--text-accent);
}
.certifications__slide-url-icon svg { width: 1.6rem; height: 1.6rem; }

.certifications__slide-divider {
	display: block;
	height: 0.1rem;
	margin: 2.4rem 0;
	background: rgba(255, 255, 255, 0.1);
}

.certifications__slide-body p {
	margin: 0 0 1.6rem;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}
.certifications__slide-body p:last-child { margin-bottom: 0; }


.certifications__statement,
.certifications__slide-body {
	color: var(--foundation-300);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
}

.certifications__statement > :first-child,
.certifications__slide-body > :first-child {
	margin-top: 0;
}

.certifications__statement > :last-child,
.certifications__slide-body > :last-child {
	margin-bottom: 0;
}

.certifications__statement :is(h2, h3, h4, h5, h6),
.certifications__slide-body :is(h2, h3, h4, h5, h6) {
	margin: 3.2rem 0 1.6rem;
	color: var(--white);
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
}

.certifications__statement :is(ul, ol),
.certifications__slide-body :is(ul, ol) {
	margin: 0 0 1.6rem;
	padding-left: 2.4rem;
}

.certifications__statement li,
.certifications__slide-body li {
	margin-bottom: 0.8rem;
	color: var(--foundation-300);
	font-size: var(--text-base);
	line-height: var(--leading-base);
}


.certifications__statement li p,
.certifications__slide-body li p {
	margin-bottom: 0;
}

.certifications__statement strong,
.certifications__slide-body strong {
	color: var(--white);
	font-weight: var(--fontWeightMedium);
}


.certifications__statement :is(h2, h3, h4, h5, h6) strong,
.certifications__slide-body :is(h2, h3, h4, h5, h6) strong {
	font-size: inherit;
	line-height: inherit;
}

.certifications__statement a,
.certifications__slide-body a {
	color: var(--neon-pulse-500);
	text-decoration: underline;
	text-underline-offset: 0.2rem;
}

.certifications__statement a:hover,
.certifications__slide-body a:hover {
	color: var(--white);
}


.certifications__modal-nav {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.6rem;
	padding: 2rem 2.4rem;
	background: rgba(255, 255, 255, 0.05);
	border-top: 0.1rem solid rgba(255, 255, 255, 0.1);
	-webkit-backdrop-filter: blur(2rem);
	backdrop-filter: blur(2rem);
}
.certifications__nav-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.9rem 1.8rem;
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
	border-radius: var(--radius-max);
	cursor: pointer;
	transition: background-color 0.2s ease, opacity 0.2s ease;
}
.certifications__nav-btn:hover { background: rgba(255, 255, 255, 0.12); }
.certifications__nav-btn.swiper-button-disabled { opacity: 0.35; pointer-events: none; }
.certifications__nav-icon { display: inline-flex; }
.certifications__nav-icon svg { width: 1.3rem; height: 1.3rem; }
.certifications__counter {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-variant-numeric: tabular-nums;
}
.certifications__counter-cur { color: var(--white); }
.certifications__counter-sep,
.certifications__counter-total { color: var(--foundation-500); }


@media (max-width: 48rem) {
	.certifications__modal { padding: 0; }
	.certifications__modal-card {
		width: 100%;
		max-height: 100%;
		height: 100%;
		border: 0;
		border-radius: 0;
	}
	.certifications__modal-close { top: 7.2rem; }
	.certifications__slide-inner { padding: 2.4rem 1.6rem; padding-top: 11rem; }
	.certifications__modal-nav { padding: 2.4rem 1.6rem 4rem; }
}

@media (prefers-reduced-motion: reduce) {
	.certifications__cta,
	.certifications__modal-close,
	.certifications__nav-btn,
	.certifications__title,
	.certifications__head .accordion-toggle { transition: none; }
}


@media (max-width: 64rem) { 
	.certifications__inner {
		flex-direction: column;
		gap: 6.4rem;
	}
	.certifications__header,
	.certifications__list {
		flex: none;
		width: 100%;
		max-width: none;
	}
}

@media (max-width: 48rem) { 
	.certifications__heading h1,
	.certifications__heading h2,
	.certifications__heading .h2,
	.certifications__heading h3,
	.certifications__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	.certifications__title {
		font-size: var(--text-lg);
		line-height: var(--leading-lg);
		letter-spacing: var(--tracking-lg);
	}
}

@media (prefers-reduced-motion: reduce) {
	.certifications__panel {
		transition: none;
	}
}



.about-page .hero__copy-col { grid-column: 7 / span 5; padding-right: 0; }


@media (max-width: 48rem) { 
	.about-page .hero__cta { justify-content: center; }
}

.thank-you-page .hero__copy-col,
.error-404-page .hero__copy-col,
.error-500-page .hero__copy-col { grid-column: 7 / span 5; padding-right: 0; }


.thank-you-page .container,
.error-404-page .container,
.error-500-page .container {
	max-width: 176rem;
	padding-left: 8rem;
	padding-right: 8rem;
}
@media (max-width: 64rem) { 
	.thank-you-page .container,
	.error-404-page .container,
	.error-500-page .container { padding-left: 4rem; padding-right: 4rem; }
}
@media (max-width: 48rem) { 
	.thank-you-page .container,
	.error-404-page .container,
	.error-500-page .container { padding-left: 1.6rem; padding-right: 1.6rem; }
}


.thank-you-page .hero__cta .btn.pill,
.error-404-page .hero__cta .btn.pill,
.error-500-page .hero__cta .btn.pill {
	padding: 0.8rem 2rem;
	line-height: 2.4rem;
	border-width: 0;
}


@media (max-width: 48rem) { 
	.thank-you-page .hero__cta,
	.error-404-page .hero__cta,
	.error-500-page .hero__cta {
		align-self: stretch;
	}
	.thank-you-page .hero__cta .btn,
	.error-404-page .hero__cta .btn,
	.error-500-page .hero__cta .btn {
		display: flex;
		flex: 1 1 auto;
		width: 100%;
		justify-content: center;
	}
}

.thank-you-page .hero .shimmer-grid,
.error-404-page .hero .shimmer-grid,
.error-500-page .hero .shimmer-grid {
	background-image: radial-gradient(color-mix(in srgb, var(--foundation-50) 20%, transparent) 0.06rem, transparent 0.14rem);
}

.thank-you-page .hero.style-2 .hero__bg::after,
.error-404-page .hero.style-2 .hero__bg::after,
.error-500-page .hero.style-2 .hero__bg::after { height: 35%; }
.thank-you-page .hero.style-2 .hero__bg,
.error-404-page .hero.style-2 .hero__bg,
.error-500-page .hero.style-2 .hero__bg {
	background:
		linear-gradient(115deg, transparent 45%, color-mix(in srgb, var(--azure-600) 32%, transparent) 70%, transparent 92%),
		radial-gradient(52% 62% at 6% 80%, color-mix(in srgb, var(--signal-teal-600) 34%, transparent), transparent 70%),
		var(--foundation-950);
}

.about-page .hero.style-2 .hero__bg {
	background:
		radial-gradient(60% 60% at 22% 18%, color-mix(in srgb, var(--signal-teal-600) 45%, transparent), transparent 70%),
		radial-gradient(55% 55% at 82% 72%, color-mix(in srgb, var(--azure-600) 40%, transparent), transparent 70%),
		var(--foundation-950);
}







.offices {
	position: relative;
	color: var(--white);
}

.offices .container {
	position: relative;
	z-index: 1;
}


.offices__head {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	margin-bottom: 7.2rem;
}

.offices__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-weight: var(--fontWeightRegular);
	font-size: var(--tagline-base);
	line-height: var(--leading-tagline-base);
	letter-spacing: var(--tracking-tagline-base);
	text-transform: uppercase;
	color: var(--text-accent);
}

.offices__heading h2,
.offices__heading .h2,
.offices__heading h1,
.offices__heading p {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.offices__regions {
	display: flex;
	flex-direction: column;
	gap: 8rem;
}

.offices__region {
	display: flex;
	flex-direction: column;
	gap: 8rem;
}

.offices__region-name {
	margin: 0;
	padding-bottom: 2.4rem;
	border-bottom: 0.1rem solid rgba(255, 255, 255, 0.1);
	font-size: var(--text-2xl);
	line-height: var(--leading-2xl);
	letter-spacing: var(--tracking-2xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.offices__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 8rem;
	row-gap: 8rem;
}

.offices__card {
	display: flex;
	flex-direction: column;
}

.offices__city {
	margin: 0;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.offices__detail {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
	margin-top: 3.6rem;
}

.offices__address,
.offices__phone {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}


.offices__address {
	white-space: pre-line;
}


.offices__phone a,
.head-office__value a {
	color: inherit;
	text-decoration: none;
}

a[x-apple-data-detectors] {
	color: inherit !important;
	text-decoration: none !important;
}


.offices__map-embed {
	width: 100%;
	aspect-ratio: 373 / 200;
	margin-top: 2.4rem;
	border-radius: var(--radius-base);
	overflow: hidden;
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	background: var(--foundation-900); 
}

.offices__map-embed iframe,
.head-office__map iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	filter: invert(0.88) hue-rotate(180deg) saturate(0.55) contrast(0.92) brightness(0.92);
}


@media (max-width: 64rem) { 
	.offices__grid {
		grid-template-columns: repeat(2, 1fr);
		column-gap: 4.8rem;
		row-gap: 6.4rem;
	}
}


@media (max-width: 48rem) { 
	.offices__head {
		margin-bottom: 4.8rem;
	}
	.offices__heading h2,
	.offices__heading .h2,
	.offices__heading h1,
	.offices__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	.offices__regions,
	.offices__region {
		gap: 4.8rem;
	}
	.offices__grid {
		grid-template-columns: 1fr;
		row-gap: 4.8rem;
	}
}



.head-office {
	position: relative;
	color: var(--white);
}

.head-office .container {
	position: relative;
	z-index: 1;
}

.head-office__grid {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	column-gap: 2.4rem;
	align-items: start;
}


.head-office__text {
	grid-column: 1 / span 5;
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.head-office__tagline {
	margin: 0;
	font-family: var(--primaryFont); 
	font-weight: var(--fontWeightRegular);
	font-size: var(--tagline-sm);
	line-height: var(--leading-tagline-sm);
	letter-spacing: var(--tracking-tagline-sm);
	text-transform: uppercase;
	color: var(--text-accent);
}

.head-office__heading h2,
.head-office__heading .h2,
.head-office__heading h1,
.head-office__heading p {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.head-office__card {
	grid-column: 7 / span 5;
	display: flex;
	flex-direction: column;
	gap: 4rem;
}

.head-office__row {
	display: flex;
	gap: 1.6rem;
	align-items: flex-start;
}

.head-office__icon {
	flex-shrink: 0;
	width: 2.4rem;
	height: 2.4rem;
	color: var(--foundation-400); 
}

.head-office__icon svg {
	display: block;
	width: 100%;
	height: 100%;
}

.head-office__detail {
	display: flex;
	flex-direction: column;
	gap: 0.8rem;
}

.head-office__label {
	margin: 0;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.head-office__value,
.head-office__value p {
	margin: 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}


.head-office__pobox {
	margin-top: 1.6rem;
}


.head-office__map {
	display: block;
	margin-top: 8rem;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}


.head-office__map {
	height: 64rem;
	background: var(--foundation-900); 
}


@media (max-width: 64rem) { 
	.head-office__grid {
		display: flex;
		flex-direction: column;
		gap: 4.8rem;
	}
	.head-office__map {
		margin-top: 8rem;
	}
	.head-office__map {
		height: 48rem;
	}
}


@media (max-width: 48rem) { 
	.head-office__heading h2,
	.head-office__heading .h2,
	.head-office__heading h1,
	.head-office__heading p {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
		letter-spacing: var(--tracking-3xl);
	}
	.head-office__map {
		height: 36rem;
	}
}



.business-areas {
	position: relative;
}

.business-areas .container {
	position: relative;
	z-index: 1;
}


.business-areas__head {
	margin-bottom: 6.4rem;
}

.business-areas__heading h2,
.business-areas__heading .h2,
.business-areas__heading p {
	margin: 0;
	max-width: 40rem;
	font-size: var(--text-2xl);
	line-height: var(--leading-2xl);
	letter-spacing: var(--tracking-2xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


.business-areas__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2.4rem;
}


.business-areas__card {
	position: relative;
	display: flex;
	min-height: 28rem;
	padding: 3.2rem;
	overflow: hidden;
	border-radius: 0.8rem;
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	-webkit-backdrop-filter: blur(8rem);
	backdrop-filter: blur(8rem);
	transition: box-shadow 0.3s ease, border-color 0.3s ease;
}

.business-areas__card:hover {
	border-color: rgba(255, 255, 255, 0.16);
	box-shadow: 0 0 8rem 0 rgba(1, 142, 154, 0.2); 
}


.business-areas__graphic {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	width: 26rem;
	z-index: -1;
	pointer-events: none;
}

.business-areas__glow {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(25%, -50%);
	width: 54rem;
	height: 54rem;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(1, 142, 154, 0.28), transparent 70%);
}


.business-areas__img {
	position: absolute;
	top: 0;
	right: 0;
	transform: translateX(20%); 
	width: auto;
	max-width: none;
	height: 100%;
	object-fit: contain;
}


.business-areas__content {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
	padding-top: 0.8rem;
	padding-right: 24rem;
}

.business-areas__title {
	margin: 0;
	font-size: var(--text-xl);
	line-height: var(--leading-xl);
	letter-spacing: var(--tracking-xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.business-areas__body {
	margin: 0.8rem 0 0;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}

.business-areas__link {
	margin-top: auto;
	padding-top: 2.4rem;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	width: fit-content;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}


a.business-areas__link::after {
	content: "";
	position: absolute;
	inset: 0;
}



.business-areas__icon {
	position: relative;
	width: 2.4rem;
	height: 2.4rem;
	flex-shrink: 0;
	overflow: hidden;
	color: var(--text-accent); 
}

.business-areas__icon-svg {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 1.4rem;
	height: 1.4rem;
	margin: -0.7rem 0 0 -0.7rem; 
	transition: transform 0.35s cubic-bezier(0.38, 0.21, 0, 0.92);
}
.business-areas__icon-svg:nth-child(2) {
	transform: translateX(-2.4rem); 
}
.business-areas__card:hover .business-areas__icon-svg:nth-child(1) {
	transform: translateX(2.4rem); 
}
.business-areas__card:hover .business-areas__icon-svg:nth-child(2) {
	transform: translateX(0); 
}

@media (prefers-reduced-motion: reduce) {
	.business-areas__icon-svg { transition: none; }
	.business-areas__card:hover .business-areas__icon-svg:nth-child(1) { transform: translateX(0); }
	.business-areas__card:hover .business-areas__icon-svg:nth-child(2) { transform: translateX(-2.4rem); }
}


@media (max-width: 64rem) { 
	.business-areas__grid {
		grid-template-columns: 1fr;
	}
}


@media (max-width: 48rem) { 
	.business-areas__head {
		margin-bottom: 6rem;
	}
	.business-areas__content {
		padding-right: 10rem;
	}
	.business-areas__glow {
		width: 40rem;
		height: 40rem;
	}
	
	.business-areas__img {
		transform: translateX(34%);
	}
}



.contact-hero {
	position: relative;
	overflow: visible; 
	color: var(--white);
	
	padding: 17.6rem 0 8rem;
}

@media (max-width: 48rem) { 
	.contact-hero { padding-top: 8.8rem; padding-bottom: 4rem; }
}


.contact-hero .container {
	position: relative;
	z-index: 1;
}


.contact-hero__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	background:
		radial-gradient(80rem 62rem at 100% 26%, color-mix(in srgb, var(--signal-teal-600) 80%, transparent), transparent 62%),
		radial-gradient(88rem 72rem at 0% 84%, color-mix(in srgb, var(--azure-600) 85%, transparent), transparent 60%),
		var(--foundation-950);
}

.contact-hero__fade {
	position: absolute;
	inset: 0;
	
	background: linear-gradient(to top, var(--foundation-950), transparent 56.6rem);
}


.contact-hero__grid {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	column-gap: 2.4rem;
	align-items: start;
}

.contact-hero__text {
	grid-column: 1 / span 6;
	align-self: start;
	display: flex;
	flex-direction: column;
	gap: 3.2rem;
	
	max-width: 62.8rem;
}

.contact-hero__tagline {
	margin: 0;
	font-family: var(--primaryFont);
	font-weight: var(--fontWeightRegular);
	font-size: var(--tagline-base);
	line-height: var(--leading-tagline-base);
	letter-spacing: var(--tracking-tagline-base);
	text-transform: uppercase;
	color: var(--text-accent);
}

.contact-hero__heading {
	margin: 0;
	font-family: var(--primaryFont);
	font-size: var(--text-6xl);
	line-height: var(--leading-6xl);
	letter-spacing: var(--tracking-6xl);
	font-weight: var(--fontWeightRegular);
	color: var(--white);
}


.contact-hero__form-card {
	grid-column: 7 / span 6;
	align-self: stretch;
	position: relative;
	overflow: hidden; 
	padding: 4rem;
	border-radius: var(--radius-sm); 
	background-color: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	-webkit-backdrop-filter: blur(8rem);
	backdrop-filter: blur(8rem);
}


.contact-hero__form-card .form:not(:has(form)) { min-height: 97.5rem; }
@media (max-width: 1100px) { .contact-hero__form-card .form:not(:has(form)) { min-height: 105rem; } }
@media (max-width: 900px) { .contact-hero__form-card .form:not(:has(form)) { min-height: 109.5rem; } }
@media (max-width: 800px) { .contact-hero__form-card .form:not(:has(form)) { min-height: 114.5rem; } }
@media (max-width: 768px) { .contact-hero__form-card .form:not(:has(form)) { min-height: 127.4rem; } }
@media (max-width: 600px) { .contact-hero__form-card .form:not(:has(form)) { min-height: 132.4rem; } }
@media (max-width: 480px) { .contact-hero__form-card .form:not(:has(form)) { min-height: 137.4rem; } }
@media (max-width: 412px) { .contact-hero__form-card .form:not(:has(form)) { min-height: 142.4rem; } }
@media (max-width: 390px) { .contact-hero__form-card .form:not(:has(form)) { min-height: 144.9rem; } }
@media (max-width: 360px) { .contact-hero__form-card .form:not(:has(form)) { min-height: 147.4rem; } }


.contact-hero .form fieldset {
	margin-bottom: 2.4rem;
}

.contact-hero .form fieldset:last-of-type {
	margin-bottom: 2.4rem;
}

.contact-hero .form fieldset.form-columns-2 {
	gap: 1.6rem;
}

.contact-hero .form .hs-form-field > label {
	display: block;
	margin-bottom: 0.4rem;
	color: var(--foundation-300);
	font-family: var(--primaryFont);
	font-weight: var(--fontWeightLight);
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
}

.contact-hero .form .hs-form-field > label .hs-form-required {
	color: var(--neon-pulse-500);
}

.contact-hero .form input[type="text"],
.contact-hero .form input[type="email"],
.contact-hero .form input[type="tel"],
.contact-hero .form input[type="number"],
.contact-hero .form select,
.contact-hero .form textarea {
	width: 100% !important;
	height: auto;
	padding: 0.8rem 0;
	border: none;
	border-bottom: 0.1rem solid rgba(255, 255, 255, 0.2);
	border-radius: 0;
	background-color: transparent;
	color: var(--white);
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	transition: border-color 200ms ease;
	
}

.contact-hero .form textarea {
	min-height: 9rem;
	padding: 1.2rem 0;
	resize: vertical;
}

.contact-hero .form input::placeholder,
.contact-hero .form textarea::placeholder {
	color: var(--foundation-400);
}

.contact-hero .form input:focus,
.contact-hero .form select:focus,
.contact-hero .form textarea:focus {
	border-bottom-color: var(--neon-pulse-500);
}


.contact-hero .form select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
	padding-right: 2.4rem;
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%3E%3Cpath%20d='M5%207.5%2010%2012.5%2015%207.5'%20stroke='%23ffffff'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0 center;
	background-size: 2rem 2rem;
}


.contact-hero .form select option {
	color: var(--foundation-900);
}


.contact-hero .form .hs-richtext,
.contact-hero .form .hs-richtext p,
.contact-hero .form .legal-consent-container .hs-form-booleancheckbox-display span {
	color: var(--foundation-300);
}


.contact-hero .form .hs_submit .actions {
	display: flex;
	justify-content: flex-start;
	margin: 0;
	padding: 0;
}

.contact-hero .form .hs-button.primary.large {
	width: auto;
	padding: 1.1rem 2.4rem;
	color: var(--foundation-900);
	font-size: var(--text-base);
	font-weight: var(--fontWeightMedium);
	border: 0.2rem solid var(--neon-pulse-600);
	border-radius: var(--radius-max);
	background-color: var(--neon-pulse-600);
	box-shadow: none;
	transition: all 250ms ease;
}

.contact-hero .form .hs-button.primary.large:hover {
	color: var(--foundation-900);
	background-color: var(--neon-pulse-500);
	border-color: var(--neon-pulse-500);
	box-shadow: 0.4rem 0.4rem 4rem 0 rgba(180, 204, 80, 0.3);
}


@media (max-width: 64rem) {
	.contact-hero__grid {
		column-gap: 4rem;
	}
	.contact-hero__form-card {
		padding: 3.2rem;
	}
}


@media (max-width: 48rem) {
	.contact-hero__grid {
		grid-template-columns: 1fr;
		row-gap: 4.8rem;
	}
	.contact-hero__text {
		grid-column: 1 / -1;
	}
	.contact-hero__form-card {
		grid-column: 1 / -1;
		padding: 2.4rem;
		-webkit-backdrop-filter: blur(2rem);
		backdrop-filter: blur(2rem);
	}
	.contact-hero .form fieldset.form-columns-2 {
		grid-template-columns: 1fr;
	}
	
	.contact-hero .form .hs_submit .actions {
		justify-content: center;
	}
	.contact-hero .form .hs-button.primary.large {
		width: 100%;
		text-align: center;
	}
}



.partnerships {
	position: relative;
	overflow: visible;
	color: var(--white);
}
.partnerships .container { position: relative; z-index: 1; }

.partnerships__inner {
	display: flex;
	flex-direction: column;
	gap: 12rem; 
}

.partnerships__header { max-width: 84rem; }
.partnerships__tagline {
	margin: 0 0 1.6rem;
	font-family: var(--primaryFont);
	font-size: var(--tagline-base);
	line-height: 1.2;
	color: var(--text-accent);
}

.partnerships__heading,
.partnerships__heading p,
.partnerships__heading h1,
.partnerships__heading h2,
.partnerships__heading h3,
.partnerships__heading .h2 {
	margin: 0;
	font-size: var(--text-4xl);
	line-height: var(--leading-4xl);
	letter-spacing: var(--tracking-4xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

.partnerships__heading:has(strong),
.partnerships__heading:has(strong) p,
.partnerships__heading:has(strong) h1,
.partnerships__heading:has(strong) h2,
.partnerships__heading:has(strong) h3,
.partnerships__heading:has(strong) .h2 {
	color: var(--foundation-500);
}
.partnerships__heading strong { color: var(--white); font-weight: inherit; }


.partnerships__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2.4rem;
}
.partnerships__card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 24rem; 
	padding: 2.4rem;
	text-align: left;
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.08);
	border-radius: 0.8rem;
	cursor: pointer;
	font-family: var(--primaryFont);
	-webkit-backdrop-filter: blur(0.4rem);
	backdrop-filter: blur(0.4rem);
	box-shadow: 0 0 0 rgba(1, 142, 154, 0);
	transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1),
		border-color 0.4s ease, background-color 0.4s ease, box-shadow 0.5s ease;
	will-change: transform;
}
.partnerships__card:hover,
.partnerships__card:focus-visible {
	border-color: color-mix(in srgb, var(--signal-teal-600) 60%, transparent);
	background: rgba(255, 255, 255, 0.08);
	transform: translateY(-0.6rem);
	box-shadow: 0 1.6rem 4rem color-mix(in srgb, var(--signal-teal-600) 16%, transparent);
	outline: none;
}
.partnerships__card-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1.6rem;
}
.partnerships__avatar {
	width: 4.8rem;
	height: 4.8rem;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--white);
	border-radius: 0.8rem;
	overflow: hidden;
}
.partnerships__avatar img { max-width: 72%; max-height: 72%; object-fit: contain; }

.partnerships__card-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3.2rem;
	height: 3.2rem;
	color: var(--white);
	background: rgba(255, 255, 255, 0.08);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
	border-radius: var(--radius-max);
	opacity: 0;
	transform: scale(0.85);
	transition: opacity 0.4s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), background-color 0.3s ease;
}
.partnerships__card-icon svg { width: 1.6rem; height: 1.6rem; }
.partnerships__card:hover .partnerships__card-icon,
.partnerships__card:focus-visible .partnerships__card-icon {
	opacity: 1;
	transform: scale(1);
	background: rgba(255, 255, 255, 0.14);
}
@media (hover: none) {
	.partnerships__card-icon { opacity: 0.7; transform: scale(1); } 
}
.partnerships__card-name {
	margin-top: 2rem;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}

@media (max-width: 64rem) { 
	.partnerships__inner { gap: 6rem; }
	.partnerships__grid { grid-template-columns: repeat(2, 1fr); }
	.partnerships__heading,
	.partnerships__heading p { font-size: var(--text-3xl); line-height: var(--leading-3xl); }
}
@media (max-width: 48rem) { 
	.partnerships__grid { grid-template-columns: 1fr; }
	.partnerships__card { min-height: 0; }
}


.partnerships__modal {
	position: fixed;
	inset: 0;
	z-index: 1000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 4rem 2rem;
	visibility: hidden; 
}
.partnerships__modal.is-open,
.partnerships__modal.is-closing { visibility: visible; }

.partnerships__modal-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(19, 25, 45, 0.8);
	-webkit-backdrop-filter: blur(1rem);
	backdrop-filter: blur(1rem);
	opacity: 0;
	
	transition: opacity 0.4s ease 0.08s;
}
.partnerships__modal.is-open .partnerships__modal-backdrop { opacity: 1; transition-delay: 0s; }

.partnerships__modal-card {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	width: min(84.6rem, 100%); 
	max-height: 100%;
	
	background: rgba(255, 255, 255, 0.05);
	-webkit-backdrop-filter: blur(8rem);
	backdrop-filter: blur(8rem);
	border: 0.1rem solid rgba(255, 255, 255, 0.1);
	border-radius: 1.6rem; 
	overflow: hidden;
	box-shadow: var(--shadow-2xl);
	
	
	transform: translateY(calc(50vh + 50% + 2rem)) scale(0.96);
	
	transition: transform 0.4s cubic-bezier(0.4, 0, 1, 1) 0.08s;
	will-change: transform;
}

.partnerships__modal.is-open .partnerships__modal-card {
	transform: translateY(0) scale(1);
	transition: transform 0.55s cubic-bezier(0.38, 0.21, 0, 0.92);
}
@media (prefers-reduced-motion: reduce) {
	.partnerships__modal-card,
	.partnerships__modal.is-open .partnerships__modal-card { transition: none; transform: none; }
	.partnerships__modal-backdrop { transition: none; }
}

.partnerships__modal-close {
	position: absolute;
	top: 2.4rem;
	right: 2.4rem;
	z-index: 3;
	width: 4rem;
	height: 4rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--white);
	background: rgba(255, 255, 255, 0.08);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
	border-radius: var(--radius-max);
	cursor: pointer;
	-webkit-backdrop-filter: blur(1rem);
	backdrop-filter: blur(1rem);
	transition: background-color 0.2s ease;
}
.partnerships__modal-close:hover { background: rgba(255, 255, 255, 0.16); }
.partnerships__modal-close svg { width: 1.3rem; height: 1.3rem; }


.partnerships__panels { position: relative; flex: 1 1 auto; min-height: 0; display: flex; }
.partnerships__panel { display: none; }
.partnerships__panel.is-active { display: flex; flex-direction: column; width: 100%; min-height: 0; }

.partnerships__panel.is-leaving {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	min-height: 0;
	pointer-events: none;
}

.partnerships__panel-head {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	gap: 2.4rem;
	padding: 3.9rem 8rem 2.4rem 3.9rem; 
}
.partnerships__avatar--lg {
	width: 8rem;
	height: 8rem;
	border-radius: 0.8rem;
}
.partnerships__panel-meta { display: flex; flex-direction: column; gap: 0.9rem; min-width: 0; }
.partnerships__panel-title {
	margin: 0;
	font-size: var(--text-2xl);
	line-height: var(--leading-2xl);
	letter-spacing: var(--tracking-2xl);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}
.partnerships__panel-url {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	width: fit-content;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
}
.partnerships__panel-url-icon { display: inline-flex; color: var(--text-accent); }
.partnerships__panel-url-icon svg { width: 1.6rem; height: 1.6rem; }

.partnerships__panel-body {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overflow-x: hidden; 
	
	scrollbar-gutter: stable;
	
	scrollbar-width: thin;
	scrollbar-color: color-mix(in srgb, var(--white) 30%, transparent) transparent;
	padding: 0 3.9rem 3.9rem;
}
.partnerships__panel-body::-webkit-scrollbar { width: 0.6rem; }
.partnerships__panel-body::-webkit-scrollbar-thumb {
	background: color-mix(in srgb, var(--white) 25%, transparent);
	border-radius: var(--radius-max);
}
.partnerships__statement p {
	margin: 0 0 1.6rem;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}
.partnerships__statement p:last-child { margin-bottom: 0; }
.partnerships__statement strong { font-weight: var(--fontWeightBold); color: inherit; }


.partnerships__panel-headline {
	margin: 0 0 2.6rem;
	font-size: var(--text-2xl);
	line-height: var(--leading-2xl);
	letter-spacing: var(--tracking-2xl);
	font-weight: var(--fontWeightRegular);
	color: var(--white);
	text-wrap: balance;
}
.partnerships__detail { margin-bottom: 3.6rem; }
.partnerships__detail:last-child { margin-bottom: 0; }
.partnerships__detail-heading {
	margin: 0 0 1.8rem;
	font-size: var(--text-lg);
	line-height: var(--leading-lg);
	letter-spacing: var(--tracking-lg);
	font-weight: var(--fontWeightSemiBold);
	color: var(--white);
}
.partnerships__expertise { list-style: none; margin: 0; padding: 0; display: grid; gap: 1.6rem; }
.partnerships__expertise-item { display: grid; grid-template-columns: 2.4rem minmax(0, 1fr); gap: 1.5rem; align-items: start; margin: 0; }
.partnerships__expertise-icon { display: inline-flex; color: var(--foundation-300); }
.partnerships__expertise-icon svg { width: 2.4rem; height: 2.4rem; }
.partnerships__expertise-text { display: grid; }
.partnerships__expertise-title,
.partnerships__expertise-desc { font-size: var(--text-base); line-height: var(--leading-base); font-weight: var(--fontWeightRegular); }
.partnerships__expertise-title { color: var(--white); }
.partnerships__expertise-desc { color: var(--foundation-300); }

.partnerships__badge { display: block; width: 14.7rem; max-width: 100%; height: auto; margin: 1.6rem 0 3.2rem; }
.partnerships__badge--wide { width: 30rem; }
.partnerships__statement + .partnerships__detail { margin-top: 3.6rem; }
.partnerships__cases { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.4rem; }
.partnerships__case {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1.6rem;
	padding: 2.6rem 2.7rem 2.4rem;
	background: color-mix(in srgb, var(--white) 10%, var(--foundation-900));
	border: 0.1rem solid color-mix(in srgb, var(--white) 18%, var(--foundation-900));
	border-radius: 0.5rem;
}
.partnerships__case-tag {
	padding: 0.4rem 0.8rem;
	font-size: var(--text-sm);
	line-height: var(--leading-sm);
	font-weight: var(--fontWeightRegular);
	color: var(--foundation-300);
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
	border-radius: 0.6rem;
}
.partnerships__case-head { display: grid; margin: 0; }
.partnerships__case-title,
.partnerships__case-result { font-size: var(--text-lg); line-height: var(--leading-lg); letter-spacing: var(--tracking-lg); }
.partnerships__case-title { font-weight: var(--fontWeightSemiBold); color: var(--white); }
.partnerships__case-result { font-weight: var(--fontWeightLight); color: var(--foundation-300); }
.partnerships__case-copy p {
	margin: 0 0 1.6rem;
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightLight);
	color: var(--foundation-300);
}
.partnerships__case-copy p:last-child { margin-bottom: 0; }
.partnerships__case-copy strong { font-weight: var(--fontWeightBold); color: inherit; }
.partnerships__case-logo { display: block; margin-top: auto; max-width: 100%; height: auto; }
@media (max-width: 48rem) {
	.partnerships__panel-headline { font-size: var(--text-xl); line-height: var(--leading-xl); }
	.partnerships__cases { grid-template-columns: minmax(0, 1fr); gap: 1.6rem; }
	.partnerships__case { padding: 2.4rem; }
}


.partnerships__modal-nav {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.6rem;
	padding: 2.4rem 4rem;
	background: rgba(255, 255, 255, 0.05);
	border-top: 0.1rem solid rgba(255, 255, 255, 0.1);
	-webkit-backdrop-filter: blur(2rem);
	backdrop-filter: blur(2rem);
}
.partnerships__nav-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.6rem;
	min-width: 11rem; 
	padding: 0.9rem 1.8rem;
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-weight: var(--fontWeightMedium);
	color: var(--white);
	background: rgba(255, 255, 255, 0.05);
	border: 0.1rem solid rgba(255, 255, 255, 0.12);
	border-radius: var(--radius-max);
	cursor: pointer;
	transition: background-color 0.2s ease;
}
.partnerships__nav-btn:hover { background: rgba(255, 255, 255, 0.12); }
.partnerships__nav-icon { display: inline-flex; }
.partnerships__nav-icon svg { width: 1.3rem; height: 1.3rem; }
.partnerships__counter {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-family: var(--primaryFont);
	font-size: var(--text-base);
	line-height: var(--leading-base);
	font-variant-numeric: tabular-nums;
}
.partnerships__counter-cur { color: var(--white); }
.partnerships__counter-sep,
.partnerships__counter-total { color: var(--foundation-400); }


@media (max-width: 48rem) {
	.partnerships__modal { padding: 0; align-items: flex-end; }
	.partnerships__modal-card {
		width: 100%;
		max-height: 92vh;
		border-radius: 1.6rem 1.6rem 0 0;
		border-bottom: none;
		transform: translateY(100%);
	}
	.partnerships__modal-close { top: 2rem; right: 2rem; }
	.partnerships__panel-head { gap: 1.6rem; padding: 3.2rem 7rem 2rem 2.4rem; }
	.partnerships__avatar--lg { width: 6.4rem; height: 6.4rem; }
	.partnerships__panel-title { font-size: var(--text-xl); line-height: var(--leading-xl); }
	.partnerships__panel-body { padding: 0 2.4rem 2.4rem; }
	.partnerships__modal-nav { padding: 1.8rem 2.4rem; }
	.partnerships__nav-btn { min-width: 0; }
}