@import url("https://use.typekit.net/pel3bcn.css");
/* Section spacing, header dimensions and typography sizes live in Salient/WPBakery. */
:root { --js-accent: var(--nectar-accent-color); --js-dark: var(--nectar-extra-color-1); --js-soft: var(--nectar-extra-color-2); }
.js-row p { text-wrap: pretty; }
.js-row h1,.js-row h2,.js-row h3 { overflow-wrap: break-word; }
.js-subline { color:var(--js-accent); }
.js-mono { font-family:ibm-plex-mono,sans-serif; }
.js-row .img-with-aniamtion-wrap img.js-news-image {height:auto; aspect-ratio: 1.38; object-fit:cover; width:100%; }
.js-row .img-with-aniamtion-wrap img.js-team-image {height:auto; aspect-ratio:1.5; object-fit:cover; width:100%; }
.js-row .img-with-aniamtion-wrap img.js-product-image {height:auto; aspect-ratio:1.3; object-fit:cover; width:100%; }

.js-read-more { color:var(--js-accent); font-size:15px; }
.js-example { font:12px/1.5 space-grotesk-variable,sans-serif; color:#77523e; border-left:2px solid var(--js-accent); padding:4px 10px; }
.light .js-example { color:#e4b39b; }
.js-accordion-subline { display:block; font:14px/1.5 space-grotesk-variable,sans-serif; margin-top:6px; }
.js-accordion .toggle { border:1px solid var(--js-accent); }
.js-accordion .toggle > .toggle-title a { font-family:space-grotesk-variable,sans-serif; }

.js-footer a { color:inherit; }
.js-footer p { font-size:14px; line-height:1.7; }
.js-quick-links { position:fixed; right:0; top:52%; z-index:99; display:flex; flex-direction:column; }
.js-quick-links a { background:var(--js-dark);color:white;width:44px;height:44px;display:grid;place-items:center;border-bottom:1px solid #fff3;font-size:25px;position:relative; }
.js-quick-links a:first-child {background:var(--js-accent)}
.js-quick-links a:nth-child(2) {background:color-mix(in srgb,var(--js-accent),black 25%)}
.js-quick-label {position:absolute;right:100%;font-size:14px;white-space:nowrap;background:var(--js-dark);padding:8px 14px;opacity:0;pointer-events:none;}
.js-quick-links a:hover .js-quick-label,.js-quick-links a:focus-visible .js-quick-label{opacity:1}
:where(a,button,input,select,textarea):focus-visible {outline:2px solid var(--js-accent);outline-offset:4px}
:where(a,button):focus:not(:focus-visible){outline:none}
.js-filters {display:flex;align-items:flex-start;gap:28px;margin-bottom:55px;}
.js-filter-fields {display:flex;flex:1;gap:32px;}
.js-filter-fields label {flex:1;min-width:0;display:flex;align-items:center;gap:12px;font-size:14px;border-bottom:1px solid #999;position:relative;}
.js-filter-fields select {flex:1;min-width:0;border:0;background:transparent;padding:12px 5px;color:inherit;}
.js-filter-actions {display:flex;flex-direction:column;gap:8px;align-items:stretch;}
.js-filter-actions button,.js-load-more,.js-feed-retry,.js-filter-trigger {background:var(--js-accent);color:white;border:0;border-radius:0;padding:13px 22px;font:500 15px/1.3 space-grotesk-variable,sans-serif;cursor:pointer;min-height:44px;}
.js-filter-actions .js-reset {background:transparent;color:var(--js-dark);font-size:13px;padding:4px;}
.js-counted-filter {display:flex;gap:18px;align-items:center;justify-content:space-between;}
.js-filter-button-count {font-variant-numeric:tabular-nums;}
.js-feed-pager {text-align:center;}
.js-feed-status {font-size:14px;}
.js-status-loading:before {content:"";display:inline-block;width:13px;height:13px;border:2px solid #ccc;border-top-color:var(--js-accent);border-radius:50%;animation:js-spin .8s linear infinite;vertical-align:middle;margin-right:10px;}
.js-filters.is-fetching .js-filter-fields label:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--js-accent),transparent);background-size:50% 100%;animation:js-shimmer 1.2s linear infinite;}
.js-filter-trigger {display:none;align-items:center;gap:10px;}
.js-filter-host-always>.js-filter-trigger {display:flex;}
.js-filter-host-always>.js-filters {display:none;}
.js-filter-drawer {position:fixed;inset:0 0 0 auto;margin:0;width:min(450px,100%);max-width:100%;height:100dvh;max-height:100dvh;border:0;padding:30px;background:#fff;color:var(--js-dark);overflow:auto;overscroll-behavior:contain;}
.js-filter-drawer::backdrop {background:#0009;}
.js-drawer-header {display:flex;align-items:center;justify-content:space-between;gap:20px;}
.js-drawer-header h2{font-size:28px;}
.js-drawer-close {background:transparent;border:0;padding:12px;cursor:pointer;}
.js-filter-drawer .js-filters,.js-filter-drawer .js-filter-fields {display:flex;flex-direction:column;width:100%;}
.js-filter-drawer .js-filter-fields label {width:100%;display:block;}
.js-filter-drawer select {display:block;width:100%;}
.js-filter-drawer .js-filter-actions {width:100%;}
html.js-drawer-open,html.js-drawer-open body {overflow:hidden;}
[hidden] {display:none!important;}
@keyframes js-spin{to{transform:rotate(360deg)}}
@keyframes js-shimmer{from{background-position:-100% 0}to{background-position:200% 0}}
@media(max-width:999px){.js-mobile-filter-host>.js-filters{display:none}.js-filter-trigger{display:flex}.js-mobile-filter-host{margin-bottom:30px}.js-quick-links{top:auto;bottom:20px}.js-quick-links a{width:38px;height:38px;font-size:21px}.js-quick-links a:nth-child(n+3){display:none}}
@media(prefers-reduced-motion:reduce){.js-status-loading:before,.js-filters.is-fetching .js-filter-fields label:after{animation:none}}
img.js-hero-image {width:100%;aspect-ratio:2560/995;object-fit:cover;display:block;}
.js-hero .img-with-aniamtion-wrap {margin:0;}
.js-services .wpb_column {text-align:center;}
.js-services a {color:var(--js-dark);}
.js-services .wpb_text_column img {width:72px;height:72px;object-fit:contain;}
.js-contact .quform-label,.js-contact .quform-description {color:inherit;}
.js-contact .quform-input input,.js-contact .quform-input textarea,.js-contact .quform-input select {background:transparent;color:inherit;border:1px solid #777;border-radius:0;}
.js-contact .quform-input select option {background:white;color:#0d0d0d;}
.js-contact .quform-submit {font:500 15px/1.3 space-grotesk-variable,sans-serif;}
.js-select-trigger{flex:1;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;background:transparent;color:inherit;padding:12px 0;font:inherit;cursor:pointer;min-width:0;}
.js-select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.js-select-panel{position:fixed;inset:auto;margin:0;border:1px solid #ddd;background:white;color:#0d0d0d;box-shadow:0 8px 35px #0002;padding:12px;z-index:100000;overflow:auto;}
.js-select-search{display:flex;align-items:center;gap:10px;}
.js-select-search input{min-width:0;width:100%;padding:10px;border:1px solid #ddd;}
.js-select-option{padding:10px 12px;cursor:pointer;display:flex;justify-content:space-between;}
.js-select-option.is-active{background:var(--js-soft);}
.js-select-option[aria-selected=true]{color:var(--js-accent);}
@media(max-width:690px){img.js-hero-image{aspect-ratio:1.7}.js-quick-links{bottom:16px}}

.js-news-card h3 a {color:inherit;}
