/**
 * Theme Name:     Hello Elementor Child
 * Author:         Elementor Team
 * Template:       hello-elementor
 * Text Domain:	   hello-elementor-child
 * Description:    Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
 */

/* ==========================================================================
   Jupa catalog
   ========================================================================== */
:root {
	--jp-blue: #004C97; --jp-deep: #003A74; --jp-turq: #5CB8B2; --jp-turq-h: #4CA8A2;
	--jp-ground: #F4F7FA; --jp-white: #FFFFFF; --jp-plate: #EEF2F5; --jp-line: #D5DEE7;
	--jp-ink: #0F1E2E; --jp-sec: #5B6B7B; --jp-dis: #A5B1BC; --jp-hover: #E9F0F7; --jp-hover-line: #9FB3C6;
	--jp-skel: #E3E9EF; --jp-teal: #3E968F; --jp-tag: #EEF5F4; --jp-tag-t: #25665F; --jp-cb: #8695A3;
	--jp-ease: 150ms ease-out;
}
#products.jp-products { background: var(--jp-ground); color: var(--jp-ink); font-family: Inter, system-ui, sans-serif; padding: calc(96px * var(--s, 1)) calc(80px * var(--s, 1)); position: relative; --jp-header: 80px; }
#products.jp-products *,#products.jp-products *::before,#products.jp-products *::after { box-sizing: border-box; border-radius: 0 !important; box-shadow: none !important; }
#products.jp-products :focus-visible { outline: 2px solid var(--jp-blue); outline-offset: 2px; }
#products.jp-products > * { max-width: calc(1280px * var(--s, 1)); margin-left: auto; margin-right: auto; }
#products .jp-ico { flex: none; display: block; width: calc(16px * var(--s, 1)); height: calc(16px * var(--s, 1)); }
#products .jp-h1 { font: 600 calc(44px * var(--s, 1))/calc(52px * var(--s, 1)) Inter, system-ui, sans-serif; letter-spacing: -0.01em; color: var(--jp-blue); margin: 0 0 calc(16px * var(--s, 1)); }
#products .jp-lede { font-size: calc(18px * var(--t, 1)); line-height: calc(28px * var(--t, 1)); color: var(--jp-ink); max-width: calc(620px * var(--s, 1)); margin: 0 0 calc(40px * var(--s, 1)); }
#products .jp-label { font: 500 calc(14px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); margin: 0 0 calc(12px * var(--s, 1)); }
#products .jp-btn { display: inline-flex; align-items: center; justify-content: center; gap: calc(8px * var(--s, 1)); background: var(--jp-blue); color: #fff !important; font: 600 calc(15px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; padding: calc(12px * var(--s, 1)) calc(22px * var(--s, 1)); border: 0; cursor: pointer; text-decoration: none !important; transition: background var(--jp-ease); }
#products .jp-btn:hover { background: var(--jp-deep); color: #fff; }
#products .jp-btn--contact { background: var(--jp-turq); }
#products .jp-btn--contact:hover { background: var(--jp-turq-h); }
#products .jp-link { background: none; border: 0; padding: 0; font: 500 calc(14px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; color: var(--jp-blue) !important; text-decoration: underline; text-underline-offset: calc(3px * var(--s, 1)); cursor: pointer; }
#products .jp-link:hover { color: var(--jp-deep) !important; background: none; }
#products .jp-bar { display: grid; grid-template-columns: 1fr; gap: calc(40px * var(--s, 1)); background: var(--jp-ground); z-index: 40; }
#products .jp-search { position: relative; display: flex; align-items: center; height: calc(56px * var(--s, 1)); background: #fff; border: 1px solid var(--jp-line); padding: 0 calc(8px * var(--s, 1)) 0 calc(16px * var(--s, 1)); gap: calc(12px * var(--s, 1)); transition: border-color var(--jp-ease); }
#products .jp-search:focus-within { outline: 2px solid var(--jp-blue); outline-offset: -1px; }
#products .jp-search > .jp-ico { color: var(--jp-sec); }
#products .jp-search .wpgb-facet { flex: 1; margin: 0 !important; }
#products .jp-search .wpgb-facet fieldset,#products .jp-search .wpgb-search-facet,#products .jp-search label { margin: 0 !important; padding: 0 !important; border: 0 !important; width: 100%; }
#products .jp-search input[type="search"] { width: 100%; height: calc(54px * var(--s, 1)); border: 0 !important; background: transparent !important; padding: 0 !important; font: 400 calc(16px * var(--t, 1))/calc(26px * var(--t, 1)) Inter, sans-serif !important; color: var(--jp-ink); outline: none !important; caret-color: var(--jp-blue); }
#products .jp-search input::placeholder { color: var(--jp-sec); opacity: 1; }
#products .jp-search .wpgb-search-facet svg,#products .jp-search .wpgb-clear-button { display: none !important; }
#products .jp-search__go { height: calc(40px * var(--s, 1)); padding: 0 calc(22px * var(--s, 1)); }
#products .jp-filter-open { display: none; }
#products .jp-cats .wpgb-facet { margin: 0 !important; }
#products .jp-cats fieldset { margin: 0 !important; padding: 0 !important; border: 0 !important; }
#products .jp-cats legend { display: none; }
#products .jp-cats ul { display: flex; flex-wrap: wrap; gap: calc(8px * var(--s, 1)); margin: 0 !important; padding: 0 !important; list-style: none; }
#products .jp-cats li { margin: 0 !important; padding: 0 !important; }
#products .jp-cats .wpgb-button { display: inline-flex !important; align-items: center; gap: calc(8px * var(--s, 1)); height: calc(38px * var(--s, 1)); padding: 0 calc(14px * var(--s, 1)) !important; margin: 0 !important; background: #fff !important; border: 1px solid var(--jp-line) !important; color: var(--jp-ink) !important; font: 500 calc(14px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif !important; cursor: pointer; transition: background var(--jp-ease), color var(--jp-ease); white-space: nowrap; }
#products .jp-cats .wpgb-button:hover { background: var(--jp-hover) !important; }
#products .jp-cats .wpgb-button:active { background: var(--jp-plate) !important; color: var(--jp-blue) !important; }
#products .jp-cats .wpgb-button[aria-pressed="true"] { background: var(--jp-blue) !important; border-color: var(--jp-blue) !important; color: #fff !important; }
#products .jp-cats .wpgb-button[aria-pressed="true"] .wpgb-button-count { color: #B9D2EA !important; }
#products .jp-cats .wpgb-button[aria-disabled="true"],#products .jp-cats .wpgb-button.wpgb-disabled { color: var(--jp-dis) !important; }
#products .jp-cats .wpgb-button-count { font: 400 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); background: none !important; padding: 0 !important; }
#products .jp-cats .wpgb-button-count::before,#products .jp-cats .wpgb-button-count::after { content: none !important; }
#products .jp-cats .wpgb-button-label { color: inherit !important; display: inline-flex; gap: calc(8px * var(--s, 1)); align-items: baseline; }
#products .jp-cats .jp-n-count { font: 400 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); }
#products .jp-cats .wpgb-button[aria-pressed="true"] .jp-n-count { color: #B9D2EA; }
#products .jp-group .wpgb-checkbox-label .jp-n-count { margin-left: auto; font: 400 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); }
#products .jp-resultbar { display: flex; flex-wrap: wrap; align-items: center; gap: calc(10px * var(--s, 1)) calc(16px * var(--s, 1)); margin-top: calc(24px * var(--s, 1)); }
#products .jp-resultbar[hidden] { display: none; }
#products .jp-count { font: 600 calc(15px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; color: var(--jp-ink); }
#products .jp-chips .wpgb-facet { margin: 0 !important; }
#products .jp-chips ul { display: flex; flex-wrap: wrap; gap: calc(8px * var(--s, 1)); margin: 0 !important; padding: 0 !important; list-style: none; }
#products .jp-chips li { margin: 0 !important; }
#products .jp-chips button,#products .jp-chips .wpgb-button { display: inline-flex !important; align-items: center; gap: calc(8px * var(--s, 1)); height: calc(30px * var(--s, 1)); padding: 0 calc(8px * var(--s, 1)) 0 calc(10px * var(--s, 1)) !important; background: #fff !important; border: 1px solid var(--jp-line) !important; color: var(--jp-ink) !important; font: 500 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif !important; cursor: pointer; }
#products .jp-chips button:hover { border-color: var(--jp-hover-line) !important; }
#products .jp-chips .wpgb-button-count { display: none; }
#products .jp-layout { display: grid; grid-template-columns: calc(302px * var(--s, 1)) minmax(0, 1fr); gap: calc(24px * var(--s, 1)); margin-top: calc(40px * var(--s, 1)); align-items: start; }
#products .jp-rail { position: sticky; top: calc(var(--jp-header) + calc(24px * var(--s, 1))); background: #fff; border: 1px solid var(--jp-line); padding: calc(20px * var(--s, 1)); max-height: calc(100vh - var(--jp-header) - calc(48px * var(--s, 1))); overflow: auto; overscroll-behavior: contain; transition: top var(--jp-ease); }
#products.jp-products.is-stuck .jp-rail { top: calc(var(--jp-header) + calc(64px * var(--s, 1)) + calc(24px * var(--s, 1))); max-height: calc(100vh - var(--jp-header) - calc(160px * var(--s, 1))); }
#products.jp-products.has-dock .jp-rail { top: calc(var(--jp-header) + calc(64px * var(--s, 1)) + calc(56px * var(--s, 1)) + calc(24px * var(--s, 1))); }
#products .jp-rail__head { display: flex; align-items: center; justify-content: space-between; padding-bottom: calc(16px * var(--s, 1)); border-bottom: 1px solid var(--jp-line); }
#products .jp-rail__title { font: 600 calc(18px * var(--t, 1))/calc(24px * var(--t, 1)) Inter, sans-serif; color: var(--jp-ink); margin: 0; }
#products .jp-rail__close,#products .jp-rail__foot { display: none; }
#products .jp-group { border-bottom: 1px solid var(--jp-line); }
#products .jp-group__head { display: flex; width: 100%; align-items: center; justify-content: space-between; padding: calc(16px * var(--s, 1)) 0; background: none !important; border: 0; color: var(--jp-ink) !important; font: 600 calc(15px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; cursor: pointer; }
#products .jp-group__head .jp-ico-minus,#products .jp-group.is-open .jp-group__head .jp-ico-plus { display: none; }
#products .jp-group.is-open .jp-group__head .jp-ico-minus { display: block; }
#products .jp-group__body { display: none; padding-bottom: calc(16px * var(--s, 1)); }
#products .jp-group.is-open .jp-group__body { display: block; }
#products .jp-group .wpgb-facet { margin: 0 !important; }
#products .jp-group fieldset { margin: 0 !important; padding: 0 !important; border: 0 !important; }
#products .jp-group legend,#products .jp-group .wpgb-facet-title { display: none; }
#products .jp-group ul { margin: 0 !important; padding: 0 !important; list-style: none; }
#products .jp-group li { margin: 0 !important; padding: 0 !important; }
#products .jp-group .wpgb-checkbox { display: flex !important; align-items: center; gap: calc(10px * var(--s, 1)); padding: calc(5px * var(--s, 1)) 0 !important; cursor: pointer; width: 100%; }
#products .jp-group .wpgb-checkbox-control { width: calc(16px * var(--s, 1)) !important; height: calc(16px * var(--s, 1)) !important; flex: none; border: 1.5px solid var(--jp-cb) !important; background: #fff !important; position: relative; transition: border-color var(--jp-ease), background var(--jp-ease); }
#products .jp-group .wpgb-checkbox:hover .wpgb-checkbox-control { border-color: var(--jp-hover-line) !important; }
#products .jp-group .wpgb-checkbox[aria-pressed="true"] .wpgb-checkbox-control,#products .jp-group .wpgb-checkbox[aria-checked="true"] .wpgb-checkbox-control { background: var(--jp-blue) !important; border-color: var(--jp-blue) !important; }
#products .jp-group .wpgb-checkbox-control::after { border-color: #fff !important; }
#products .jp-group .wpgb-checkbox-label { flex: 1; font: 500 calc(14px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; color: var(--jp-ink); display: flex; justify-content: space-between; gap: calc(8px * var(--s, 1)); }
#products .jp-group .wpgb-checkbox-count,#products .jp-group .wpgb-checkbox-label span { font: 400 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); }
#products .jp-group .wpgb-checkbox-count::before,#products .jp-group .wpgb-checkbox-count::after { content: none !important; }
#products .jp-group [aria-disabled="true"] .wpgb-checkbox-label,#products .jp-group .wpgb-disabled .wpgb-checkbox-label { color: var(--jp-dis); }
#products .jp-group .wpgb-toggle-hidden { background: none !important; border: 0; padding: calc(6px * var(--s, 1)) 0 0 !important; font: 500 calc(14px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; color: var(--jp-blue) !important; text-decoration: underline; text-underline-offset: calc(3px * var(--s, 1)); cursor: pointer; }
#products .jp-help { padding-top: calc(16px * var(--s, 1)); }
#products .jp-help p { font: 400 calc(13px * var(--t, 1))/calc(19px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); margin: 0 0 calc(8px * var(--s, 1)); }
#products .jp-help .jp-help__title { font: 600 calc(15px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; color: var(--jp-ink); }
#products.jp-products.is-stuck .jp-help { display: none; }
#products .jp-results { min-width: 0; }
#products .jp-result-heading { font: 600 calc(20px * var(--t, 1))/calc(26px * var(--t, 1)) Inter, sans-serif; color: var(--jp-ink); margin: 0 0 calc(20px * var(--s, 1)); }
#products .jp-result-heading span { font-weight: 400; font-size: calc(15px * var(--t, 1)); color: var(--jp-sec); }
#products .jp-result-heading[hidden] { display: none; }
#products .jp-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: calc(24px * var(--s, 1)); align-items: stretch; transition: opacity var(--jp-ease); }
#products.jp-products.is-loading .jp-grid { opacity: .45; }
#products .jp-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--jp-line); min-width: 0; outline: 2px solid transparent; outline-offset: -1px; transition: outline-color var(--jp-ease); }
#products .jp-card.is-open { outline-color: var(--jp-blue); }
#products .jp-card__plate { position: relative; aspect-ratio: 302 / 210; background: var(--jp-plate); display: flex; align-items: center; justify-content: center; padding: calc(20px * var(--s, 1)); }
#products .jp-card__plate img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; display: block; }
#products .jp-pn { position: absolute; top: calc(12px * var(--s, 1)); left: calc(12px * var(--s, 1)); background: #fff; color: var(--jp-blue); font: 600 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif; font-variant-numeric: tabular-nums; padding: calc(4px * var(--s, 1)) calc(8px * var(--s, 1)); z-index: 1; }
#products .jp-card__body { flex: 1; padding: calc(18px * var(--s, 1)) calc(20px * var(--s, 1)) calc(16px * var(--s, 1)); display: flex; flex-direction: column; gap: calc(4px * var(--s, 1)); }
#products .jp-card__cat { font: 500 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif; color: var(--jp-teal); margin: 0 0 2px; }
#products .jp-card__title { font: 600 calc(17px * var(--t, 1))/calc(23px * var(--t, 1)) Inter, sans-serif; color: var(--jp-blue); margin: 0; }
#products .jp-card__maker { font: 400 calc(14px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); margin: 0; }
#products .jp-tags { display: flex; flex-wrap: wrap; gap: calc(6px * var(--s, 1)); list-style: none; margin: auto 0 0 !important; padding: calc(10px * var(--s, 1)) 0 0 !important; }
#products .jp-tags li { background: var(--jp-tag); color: var(--jp-tag-t); font: 500 calc(12px * var(--t, 1))/calc(16px * var(--t, 1)) Inter, sans-serif; padding: calc(3px * var(--s, 1)) calc(8px * var(--s, 1)); margin: 0 !important; }
#products .jp-card__foot { display: flex; align-items: center; justify-content: space-between; height: calc(46px * var(--s, 1)); padding: 0 calc(20px * var(--s, 1)); border: 0; border-top: 1px solid var(--jp-line); background: #fff !important; color: var(--jp-blue) !important; font: 600 calc(14px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; cursor: pointer; transition: background var(--jp-ease); width: 100%; text-align: left; }
#products .jp-card__foot:hover { background: var(--jp-hover) !important; }
#products .jp-card__foot:hover .jp-card__qv { text-decoration: underline; text-underline-offset: calc(3px * var(--s, 1)); }
#products .jp-card__foot .jp-ico-minus,#products .jp-card.is-open .jp-card__foot .jp-ico-plus { display: none; }
#products .jp-card.is-open .jp-card__foot .jp-ico-minus { display: block; }
#products .jp-card__inline { padding: 0 calc(20px * var(--s, 1)) calc(20px * var(--s, 1)); }
#products .jp-qv { position: relative; display: grid; grid-template-columns: calc(400px * var(--s, 1)) minmax(0, 1fr); background: #fff; outline: 2px solid var(--jp-blue); outline-offset: -2px; margin-bottom: calc(24px * var(--s, 1)); scroll-margin-top: calc(220px * var(--s, 1)); }
#products .jp-qv__media { background: var(--jp-plate); display: flex; align-items: center; justify-content: center; padding: calc(32px * var(--s, 1)); min-height: calc(360px * var(--s, 1)); }
#products .jp-qv__media img { max-width: 100%; max-height: calc(420px * var(--s, 1)); object-fit: contain; }
#products .jp-qv__info { padding: calc(28px * var(--s, 1)) calc(32px * var(--s, 1)) calc(40px * var(--s, 1)); }
#products .jp-qv__title { font: 600 calc(24px * var(--s, 1))/calc(30px * var(--s, 1)) Inter, sans-serif; color: var(--jp-blue); margin: 0 0 calc(4px * var(--s, 1)); }
#products .jp-qv__maker { font: 400 calc(16px * var(--t, 1))/calc(24px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); margin: 0 0 calc(16px * var(--s, 1)); }
#products .jp-specs { margin: 0 0 calc(20px * var(--s, 1)); border-top: 1px solid var(--jp-line); }
#products .jp-specs > div { display: grid; grid-template-columns: calc(150px * var(--s, 1)) 1fr; min-height: calc(36px * var(--s, 1)); align-items: center; border-bottom: 1px solid var(--jp-line); padding: calc(6px * var(--s, 1)) 0; }
#products .jp-specs dt { font: 400 calc(14px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); margin: 0; }
#products .jp-specs dd { font: 500 calc(14px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; color: var(--jp-ink); margin: 0; font-variant-numeric: tabular-nums; }
#products .jp-specs a { color: var(--jp-blue); text-decoration: underline; }
#products .jp-qv__text { font: 400 calc(16px * var(--t, 1))/calc(26px * var(--t, 1)) Inter, sans-serif; color: var(--jp-ink); margin-bottom: calc(24px * var(--s, 1)); }
#products .jp-qv__text p { margin: 0 0 calc(12px * var(--s, 1)); }
#products .jp-qv__actions { display: flex; flex-wrap: wrap; align-items: center; gap: calc(12px * var(--s, 1)) calc(24px * var(--s, 1)); padding-right: calc(72px * var(--s, 1)); }
#products .jp-qv__close { position: absolute; right: 0; bottom: 0; width: calc(64px * var(--s, 1)); height: calc(64px * var(--s, 1)); display: flex; align-items: center; justify-content: center; background: var(--jp-blue) !important; color: #fff !important; border: 0; padding: 0; cursor: pointer; transition: background var(--jp-ease); }
#products .jp-qv__close:hover { background: var(--jp-deep) !important; }
#products .jp-empty { grid-column: 1 / -1; background: #fff; border: 1px solid var(--jp-line); padding: calc(40px * var(--s, 1)); }
#products .jp-empty h3 { font: 600 calc(24px * var(--s, 1))/calc(30px * var(--s, 1)) Inter, sans-serif; color: var(--jp-ink); margin: 0 0 calc(8px * var(--s, 1)); }
#products .jp-empty p { font: 400 calc(16px * var(--t, 1))/calc(26px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); margin: 0 0 calc(20px * var(--s, 1)); }
#products .jp-empty__actions { display: flex; align-items: center; gap: calc(24px * var(--s, 1)); }
#products .jp-cta { display: flex; align-items: center; justify-content: space-between; gap: calc(32px * var(--s, 1)); background: var(--jp-blue); color: #fff; padding: calc(40px * var(--s, 1)) calc(48px * var(--s, 1)); margin-top: calc(64px * var(--s, 1)); }
#products .jp-cta h2 { font: 600 calc(28px * var(--s, 1))/calc(34px * var(--s, 1)) Inter, sans-serif; color: #fff; margin: 0 0 calc(8px * var(--s, 1)); letter-spacing: -0.01em; }
#products .jp-cta p { font: 400 calc(16px * var(--t, 1))/calc(26px * var(--t, 1)) Inter, sans-serif; color: #C9DCEF; margin: 0; max-width: calc(620px * var(--s, 1)); }
#products .jp-sentinel { display: block; height: 1px; }
@keyframes jpIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
#products .jp-dock { position: fixed; left: 0; right: 0; top: calc(var(--jp-header) + calc(64px * var(--s, 1))); z-index: 39; height: calc(56px * var(--s, 1)); background: #fff; border-top: 2px solid var(--jp-blue); border-bottom: 1px solid var(--jp-line); display: flex; align-items: center; gap: calc(20px * var(--s, 1)); padding: 0 calc(80px * var(--s, 1)); max-width: none !important; margin: 0 !important; animation: jpIn var(--jp-ease); }
#products .jp-dock[hidden] { display: none; }
#products.jp-products:not(.is-stuck) .jp-dock { top: var(--jp-header); }
#products .jp-dock__open { flex: 1; display: flex; align-items: center; gap: 0; background: none !important; border: 0; padding: 0; text-align: left; cursor: pointer; min-width: 0; height: 100%; color: inherit !important; }
#products .jp-dock__img { width: calc(48px * var(--s, 1)); height: calc(36px * var(--s, 1)); background: var(--jp-plate); display: flex; align-items: center; justify-content: center; flex: none; margin-right: calc(20px * var(--s, 1)); }
#products .jp-dock__img img { max-width: calc(44px * var(--s, 1)); max-height: calc(32px * var(--s, 1)); object-fit: contain; }
#products .jp-dock__title { font: 600 calc(15px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif; color: var(--jp-blue); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; flex: 0 1 auto; }
#products .jp-dock__open:hover .jp-dock__title { text-decoration: underline; text-underline-offset: calc(3px * var(--s, 1)); }
#products .jp-dock__meta { font: 400 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); white-space: nowrap; flex: none; padding-left: calc(12px * var(--s, 1)); margin-left: calc(12px * var(--s, 1)); border-left: 1px solid var(--jp-line); font-variant-numeric: tabular-nums; }
#products .jp-dock__meta[hidden] { display: none; }
#products .jp-dock__tags { display: flex; gap: calc(6px * var(--s, 1)); flex: none; padding-left: calc(12px * var(--s, 1)); margin-left: calc(12px * var(--s, 1)); border-left: 1px solid var(--jp-line); }
#products .jp-dock__tags:empty { display: none; }
#products .jp-dock__tags span { background: var(--jp-tag); color: var(--jp-tag-t); font: 500 calc(12px * var(--t, 1))/calc(16px * var(--t, 1)) Inter, sans-serif; padding: 2px calc(7px * var(--s, 1)); }
#products .jp-dock__show,#products .jp-dock__quote { flex: none; font: 500 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif !important; }
#products .jp-dock__close { flex: none; width: calc(40px * var(--s, 1)); height: calc(40px * var(--s, 1)); margin-right: calc(-12px * var(--s, 1)); margin-left: calc(-4px * var(--s, 1)); display: flex; align-items: center; justify-content: center; background: none !important; border: 0; color: var(--jp-ink) !important; cursor: pointer; transition: color var(--jp-ease); }
#products .jp-dock__close:hover { color: var(--jp-blue) !important; }

@media (prefers-reduced-motion: reduce) {
#products.jp-products *,#products.jp-products *::before { animation: none !important; transition: none !important; } }
#products .jp-stick { position: fixed; top: var(--jp-header); left: 0; right: 0; z-index: 40; height: calc(64px * var(--s, 1)); background: #fff; border-bottom: 1px solid var(--jp-line); max-width: none !important; margin: 0 !important; transform: translateY(-100%); opacity: 0; visibility: hidden; pointer-events: none; transition: transform 220ms cubic-bezier(.2, .7, .2, 1), opacity 160ms ease-out, visibility 0s linear 220ms; }
#products.jp-products.is-stuck .jp-stick { transform: none; opacity: 1; visibility: visible; pointer-events: auto; transition: transform 220ms cubic-bezier(.2, .7, .2, 1), opacity 160ms ease-out, visibility 0s; }
#products .jp-stick__in { max-width: calc(1280px * var(--s, 1)); height: 100%; margin: 0 auto; display: flex; align-items: center; gap: calc(16px * var(--s, 1)); }
#products .jp-stick__search { flex: none; }
#products .jp-stick .jp-search { width: calc(360px * var(--s, 1)); height: calc(44px * var(--s, 1)); padding: 0 calc(4px * var(--s, 1)) 0 calc(12px * var(--s, 1)); gap: calc(10px * var(--s, 1)); transition: width 200ms ease-out; }
#products .jp-stick .jp-search:focus-within { width: calc(520px * var(--s, 1)); }
#products .jp-stick .jp-search input[type="search"] { height: calc(42px * var(--s, 1)); font-size: calc(14px * var(--t, 1)) !important; line-height: calc(20px * var(--t, 1)) !important; }
#products .jp-stick .jp-search__go { height: calc(36px * var(--s, 1)); width: calc(72px * var(--s, 1)); padding: 0; font-size: calc(13px * var(--t, 1)); line-height: calc(18px * var(--t, 1)); }
#products .jp-stick__prev,#products .jp-stick__next { flex: none; width: calc(36px * var(--s, 1)); height: calc(36px * var(--s, 1)); display: flex; align-items: center; justify-content: center; background: #fff !important; border: 1px solid var(--jp-line) !important; color: var(--jp-ink) !important; padding: 0; cursor: pointer; transition: background var(--jp-ease), opacity var(--jp-ease); }
#products .jp-stick__prev:hover,#products .jp-stick__next:hover { background: var(--jp-hover) !important; }
#products .jp-stick__prev:disabled,#products .jp-stick__next:disabled { opacity: .35; cursor: default; }
#products .jp-stick__prev .jp-ico { transform: rotate(90deg); }
#products .jp-stick__next .jp-ico { transform: rotate(-90deg); }
#products .jp-stick__cats { flex: 1; min-width: 0; position: relative; }
#products .jp-stick__cats .wpgb-facet,#products .jp-stick__cats fieldset { margin: 0 !important; padding: 0 !important; border: 0 !important; min-width: 0; }
#products .jp-stick__cats legend { display: none; }
#products .jp-stick__cats ul { display: flex; flex-wrap: nowrap; gap: calc(8px * var(--s, 1)); overflow-x: auto; scroll-behavior: smooth; scrollbar-width: none; margin: 0 !important; padding: 0 !important; list-style: none; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 calc(24px * var(--s, 1)), #000 calc(100% - calc(48px * var(--s, 1))), transparent); mask-image: linear-gradient(90deg, transparent 0, #000 calc(24px * var(--s, 1)), #000 calc(100% - calc(48px * var(--s, 1))), transparent); }
#products .jp-stick.at-start .jp-stick__cats ul { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - calc(48px * var(--s, 1))), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - calc(48px * var(--s, 1))), transparent); }
#products .jp-stick.at-end .jp-stick__cats ul { -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 calc(24px * var(--s, 1))); mask-image: linear-gradient(90deg, transparent 0, #000 calc(24px * var(--s, 1))); }
#products .jp-stick.at-start.at-end .jp-stick__cats ul { -webkit-mask-image: none; mask-image: none; }
#products .jp-stick__cats ul::-webkit-scrollbar { display: none; }
#products .jp-stick__cats li { margin: 0 !important; padding: 0 !important; flex: none; }
#products .jp-stick__cats .wpgb-button { display: inline-flex !important; align-items: center; gap: calc(8px * var(--s, 1)); height: calc(36px * var(--s, 1)); padding: 0 calc(13px * var(--s, 1)) !important; margin: 0 !important; background: #fff !important; border: 1px solid var(--jp-line) !important; color: var(--jp-ink) !important; font: 500 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif !important; cursor: pointer; white-space: nowrap; transition: background var(--jp-ease), color var(--jp-ease); }
#products .jp-stick__cats .wpgb-button:hover { background: var(--jp-hover) !important; }
#products .jp-stick__cats .wpgb-button[aria-pressed="true"] { background: var(--jp-blue) !important; border-color: var(--jp-blue) !important; color: #fff !important; }
#products .jp-stick__cats .wpgb-button-label { display: inline-flex; gap: calc(8px * var(--s, 1)); align-items: baseline; color: inherit !important; }
#products .jp-stick__cats .jp-n-count { font: 400 calc(12px * var(--t, 1))/calc(16px * var(--t, 1)) Inter, sans-serif; color: var(--jp-sec); }
#products .jp-stick__cats .wpgb-button[aria-pressed="true"] .jp-n-count { color: #B9D2EA; }
#products .jp-stick__cats .wpgb-button[aria-disabled="true"] { color: var(--jp-dis) !important; }
#products .jp-stick .jp-filter-open { height: calc(44px * var(--s, 1)); }

@media (min-width: 1700px) {
#products.jp-products { --s: 1.25; --t: 1.17; } }
@media (min-width: 2300px) {
#products.jp-products { --s: 1.6; --t: 1.4; } }

@media (max-width: 1360px) {
#products.jp-products { padding: 96px 48px; }
#products .jp-dock { padding: 0 48px; }
#products .jp-layout { grid-template-columns: minmax(240px, 268px) minmax(0, 1fr); gap: 22px; }
#products .jp-grid { gap: 22px; }
#products .jp-qv { grid-template-columns: 340px minmax(0, 1fr); }
}


@media (max-width: 1180px) {
#products.jp-products { padding: 80px 40px; }
#products .jp-dock { padding: 0 40px; }
#products .jp-bar { grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; row-gap: 20px; }
#products .jp-cats { grid-column: 1 / -1; }
#products .jp-filter-open { display: flex; align-items: center; justify-content: center; gap: 8px; height: 56px; padding: 0 22px; background: #fff !important; border: 1px solid var(--jp-line); color: var(--jp-ink) !important; font: 600 15px/20px Inter, sans-serif; cursor: pointer; }
#products .jp-filter-open:hover { background: var(--jp-hover) !important; }
#products .jp-filter-open__n:not(:empty) { background: var(--jp-blue); color: #fff; font-size: 12px; line-height: 18px; min-width: 18px; padding: 0 5px; text-align: center; }
#products .jp-layout { grid-template-columns: 1fr; margin-top: 24px; }
#products .jp-rail { position: fixed; inset: 0 auto 0 0; width: min(420px, 100%); z-index: 100000; max-height: none; border: 0; border-right: 1px solid var(--jp-line); padding: 20px 24px 96px; display: none; }
html.jp-sheet-open { overflow: hidden; }
html.jp-sheet-open #products .jp-rail { display: block; }
html.jp-sheet-open #products.jp-products::after { content: ""; position: fixed; inset: 0; background: rgba(15, 30, 46, .4); z-index: 99999; }
#products .jp-rail__head .jp-clear { display: none; }
#products .jp-rail__close { display: flex; width: 44px; height: 44px; align-items: center; justify-content: center; background: none !important; border: 0; color: var(--jp-ink) !important; margin-right: -12px; }
#products .jp-rail__foot { display: flex; position: fixed; left: 0; bottom: 0; width: min(420px, 100%); align-items: center; justify-content: space-between; gap: 16px; padding: 14px 24px; background: #fff; border-top: 1px solid var(--jp-line); }
#products .jp-help { display: none; }
#products .jp-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }
#products .jp-card__plate { aspect-ratio: 303 / 150; }
#products .jp-qv { grid-template-columns: 300px minmax(0, 1fr); }
#products.jp-products.is-stuck .jp-rail { top: 0; max-height: none; }
}


@media (max-width: 900px) {
#products.jp-products { padding: 64px 32px; }
#products .jp-dock { padding: 0 8px 0 32px; }
#products .jp-h1 { font-size: 34px; line-height: 40px; }
#products .jp-lede { font-size: 16px; line-height: 26px; margin-bottom: 24px; }
#products .jp-label { display: none; }
#products .jp-cats ul { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin: 0 -32px !important; padding: 0 32px 4px !important; -webkit-mask-image: linear-gradient(90deg, #000 88%, transparent); mask-image: linear-gradient(90deg, #000 88%, transparent); }
#products .jp-cats ul::-webkit-scrollbar { display: none; }
#products .jp-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
#products .jp-card__plate { aspect-ratio: 340 / 210; }
#products .jp-qv { grid-template-columns: 1fr; }
#products .jp-qv__media { min-height: 260px; }
#products .jp-dock__show,#products .jp-dock__tags { display: none; }
#products .jp-cta { flex-direction: column; align-items: flex-start; padding: 32px; margin-top: 48px; }
#products .jp-cta h2 { font-size: 24px; line-height: 30px; }
#products .jp-specs > div { grid-template-columns: 130px 1fr; }
}


@media (max-width: 600px) {
#products.jp-products { padding: 56px 20px; }
#products .jp-bar { grid-template-columns: 1fr; gap: 12px; }
#products .jp-search { height: 52px; }
#products .jp-search input[type="search"] { height: 50px; font-size: 15px !important; }
#products .jp-search__go { display: none; }
#products .jp-filter-open { width: 100%; height: 44px; }
#products .jp-cats ul { margin: 0 -20px !important; padding: 0 20px 4px !important; }
#products .jp-rail { width: 100%; padding: 20px 20px 96px; border-right: 0; }
#products .jp-rail__foot { width: 100%; padding: 14px 20px; }
#products .jp-group .wpgb-checkbox { padding: 9px 0 !important; }
#products .jp-group .wpgb-checkbox-control { width: 18px !important; height: 18px !important; }
#products .jp-grid { grid-template-columns: 1fr; gap: 16px; }
#products .jp-card__plate { aspect-ratio: 350 / 210; }
#products .jp-qv-slot { display: none; }
#products .jp-dock { padding: 0 8px 0 20px; top: calc(var(--jp-header) + 64px); }
#products .jp-dock__quote,#products .jp-dock__maker { display: none; }
#products .jp-cta { padding: 32px 24px; margin-top: 40px; }
#products .jp-specs > div { grid-template-columns: 120px 1fr; }
#products .jp-qv__actions { padding-right: 0; }
}
@media (max-width: 1360px) {
#products .jp-stick__in { padding: 0 48px; } }
@media (max-width: 1180px) {
#products .jp-stick__in { padding: 0 40px; gap: 12px; }
#products .jp-stick__search { flex: 1; min-width: 0; }
#products .jp-stick .jp-search,#products .jp-stick .jp-search:focus-within { width: 100%; }
#products .jp-stick__prev,#products .jp-stick__next,#products .jp-stick__cats { display: none; }
}
@media (max-width: 900px) {
#products .jp-stick__in { padding: 0 32px; } }
@media (max-width: 600px) {
#products .jp-stick__in { padding: 0 20px; gap: 8px; }
#products .jp-stick .jp-search__go { display: none; }
#products .jp-stick .jp-filter-open { width: auto; padding: 0 14px; }
}
@media (prefers-reduced-motion: reduce) {
#products .jp-stick,#products.jp-products.is-stuck .jp-stick { transition: none; } }

#products .jp-bar > *, #products .jp-cats, #products .jp-cats__row, #products .jp-cats .wpgb-facet, #products fieldset { min-width: 0; }
@media (max-width: 600px) { #products .jp-bar { grid-template-columns: minmax(0, 1fr); } }
/* Dock and sticky line share the page grid (1280 x scale, centred) */
@media (min-width: 1361px) {
	#products .jp-dock { padding-left: max(calc(80px * var(--s, 1)), calc((100% - 1280px * var(--s, 1)) / 2)); padding-right: max(calc(80px * var(--s, 1)), calc((100% - 1280px * var(--s, 1)) / 2)); }
	#products .jp-stick__in { padding: 0; }
}
#products .jp-stick__search .jp-search { box-sizing: border-box; }
/* Hero title scales with the layout (Figma: 64/70 at 1440, 80 at 1920, 102.4 at 2560), two lines */
body .elementor-element.elementor-element-646e319 .elementor-heading-title { font-size: calc(64px * var(--s, 1)) !important; line-height: calc(70px * var(--s, 1)) !important; text-wrap: balance; }
@media (max-width: 900px) { body .elementor-element.elementor-element-646e319 .elementor-heading-title { font-size: 44px !important; line-height: 50px !important; } }
@media (max-width: 600px) { body .elementor-element.elementor-element-646e319 .elementor-heading-title { font-size: 40px !important; line-height: 46px !important; } }
/* Inter everywhere (the Elementor kit falls back to Epilogue for body text) */
body[class*="elementor-kit-"], [class*="elementor-kit-"] { --e-global-typography-primary-font-family: "Inter"; --e-global-typography-secondary-font-family: "Inter"; --e-global-typography-text-font-family: "Inter"; --e-global-typography-accent-font-family: "Inter"; }
body .elementor-widget-text-editor, body .elementor-widget-text-editor *, body .elementor-counter, body .elementor-counter *, body .elementor-heading-title, body .elementor-button, body .elementor-nav-menu a, body .e-n-accordion, body .e-n-accordion * { font-family: Inter, system-ui, sans-serif !important; }
/* Sticky filter rail: fit the viewport without an inner scrollbar */
@media (min-width: 1181px) {
	#products.jp-products .jp-rail { max-height: none; overflow: visible; }
	#products.jp-products.is-stuck .jp-rail { max-height: calc(100vh - var(--jp-header) - 64px * var(--s, 1) - 24px * var(--s, 1) - 16px); overflow: auto; scrollbar-width: thin; }
	#products.jp-products.is-stuck.has-dock .jp-rail { max-height: calc(100vh - var(--jp-header) - 120px * var(--s, 1) - 24px * var(--s, 1) - 16px); }
}

/* Rail wrapper (sticky) + jump buttons under the filter rail */
#products .jp-jump { display: none; }
#products .jp-jump__skip, #products .jp-jump__back { display: inline-flex; align-items: center; justify-content: center; gap: calc(6px * var(--s, 1)); height: calc(34px * var(--s, 1)); padding: 0 calc(10px * var(--s, 1)); font: 500 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif !important; text-decoration: none !important; border: 1px solid; cursor: pointer; white-space: nowrap; transition: background 150ms ease-out, color 150ms ease-out; border-radius: 0 !important; }
#products .jp-jump .jp-ico { width: calc(14px * var(--s, 1)); height: calc(14px * var(--s, 1)); }
#products .jp-jump__skip { background: #fff !important; color: #004C97 !important; border-color: #D5DEE7 !important; }
#products .jp-jump__skip:hover { background: #E9F0F7 !important; }
#products .jp-jump__back { background: #004C97 !important; color: #fff !important; border-color: #004C97 !important; }
#products .jp-jump__back:hover { background: #003A74 !important; border-color: #003A74 !important; }
@media (min-width: 1181px) {
	#products .jp-railwrap { position: sticky; top: calc(var(--jp-header) + 24px * var(--s, 1)); align-self: start; transition: top 200ms ease-out; }
	#products.jp-products.is-stuck .jp-railwrap { top: calc(var(--jp-header) + 88px * var(--s, 1)); }
	#products.jp-products.is-stuck.has-dock .jp-railwrap { top: calc(var(--jp-header) + 144px * var(--s, 1)); }
	#products .jp-railwrap .jp-rail { position: static; top: auto; }
	#products.jp-products.is-stuck .jp-jump { display: grid; grid-template-columns: 1fr 1fr; margin-top: calc(16px * var(--s, 1)); animation: jpIn 150ms ease-out; }
	#products.jp-products.is-stuck .jp-rail { max-height: calc(100vh - var(--jp-header) - 138px * var(--s, 1) - 16px); }
	#products.jp-products.is-stuck.has-dock .jp-rail { max-height: calc(100vh - var(--jp-header) - 194px * var(--s, 1) - 16px); }
}
@media (max-width: 1180px) {
	#products .jp-railwrap { display: contents; }
	#products.jp-products.is-stuck .jp-jump { display: flex; position: fixed; right: 20px; bottom: 20px; z-index: 60; }
	#products.jp-products.is-stuck .jp-jump__skip, #products.jp-products.is-stuck .jp-jump__back { height: 40px; }
	html.jp-sheet-open #products .jp-jump { display: none; }
}
@media (max-width: 600px) {
	#products.jp-products.is-stuck .jp-jump__skip, #products.jp-products.is-stuck .jp-jump__back { width: 44px; height: 44px; padding: 0; font-size: 0 !important; gap: 0; }
	#products.jp-products.is-stuck .jp-jump .jp-ico { width: 16px; height: 16px; }
}
/* Compact help line in the sticky rail */
@media (min-width: 1181px) {
	#products.jp-products.is-stuck .jp-help { display: flex; flex-wrap: wrap; align-items: baseline; gap: calc(2px * var(--s, 1)) calc(8px * var(--s, 1)); padding: calc(12px * var(--s, 1)) 0 0; }
	#products.jp-products.is-stuck .jp-help p:not(.jp-help__title) { display: none; }
	#products.jp-products.is-stuck .jp-help .jp-help__title { margin: 0; font: 600 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif; }
	#products.jp-products.is-stuck .jp-help .jp-link { font-size: calc(13px * var(--t, 1)); line-height: calc(18px * var(--t, 1)); }
}
@media (min-width: 1181px) {
	#products.jp-products.is-stuck .jp-help { flex-wrap: nowrap; justify-content: space-between; align-items: center; }
	#products.jp-products.is-stuck .jp-help .jp-link { flex: none; display: inline-flex; align-items: center; height: calc(28px * var(--s, 1)); padding: 0 calc(10px * var(--s, 1)); border: 1px solid #D5DEE7; background: #fff; text-decoration: none !important; font-weight: 500; transition: background 150ms ease-out; }
	#products.jp-products.is-stuck .jp-help .jp-link:hover { background: #E9F0F7; }
}
/* Sticky rail uses the full left column height; help line and jump buttons sit at the bottom */
@media (min-width: 1181px) {
	#products.jp-products.is-stuck .jp-railwrap { display: flex; flex-direction: column; height: calc(100vh - var(--jp-header) - 88px * var(--s, 1) - 16px * var(--s, 1)); }
	#products.jp-products.is-stuck.has-dock .jp-railwrap { height: calc(100vh - var(--jp-header) - 144px * var(--s, 1) - 16px * var(--s, 1)); }
	#products.jp-products.is-stuck .jp-railwrap .jp-rail { flex: 1 1 auto; min-height: 0; max-height: none; display: flex; flex-direction: column; overflow: auto; }
	#products.jp-products.is-stuck .jp-rail .jp-help { margin-top: auto; border-top: 0; }
	#products.jp-products.is-stuck .jp-jump { flex: none; }
}

@media (min-width: 1181px) { #products.jp-products.is-stuck .jp-railwrap .jp-rail { padding-bottom: calc(14px * var(--s, 1)); } }
/* No single-word last lines in running text and headings */
body .elementor-widget-text-editor p, body .jp-products p, body .elementor-widget-text-editor { text-wrap: pretty; }
body .elementor-heading-title, body .jp-products h2, body .jp-products h3 { text-wrap: balance; }
/* Selection chips: square, one line with the count, drawn x */
#products .jp-chips fieldset, #products .jp-chips .wpgb-selection-facet { margin: 0 !important; padding: 0 !important; border: 0 !important; }
#products .jp-chips legend { display: none !important; }
#products .jp-chips ul { display: flex; flex-wrap: wrap; gap: calc(8px * var(--s, 1)); margin: 0 !important; padding: 0 !important; }
#products .jp-chips .wpgb-button { display: inline-flex !important; flex-direction: row-reverse; align-items: center; gap: calc(8px * var(--s, 1)); height: calc(30px * var(--s, 1)); padding: 0 calc(8px * var(--s, 1)) 0 calc(10px * var(--s, 1)) !important; margin: 0 !important; background: #fff !important; border: 1px solid #D5DEE7 !important; color: #0F1E2E !important; font: 500 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif !important; cursor: pointer; border-radius: 0 !important; }
#products .jp-chips .wpgb-button:hover { border-color: #9FB3C6 !important; }
#products .jp-chips .wpgb-button-label { padding: 0 !important; margin: 0 !important; color: inherit !important; font: inherit !important; }
#products .jp-chips .wpgb-button-control { position: static !important; display: block !important; flex: none; width: calc(14px * var(--s, 1)) !important; height: calc(14px * var(--s, 1)) !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: currentColor !important; transform: none !important; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 4l8 8M12 4l-8 8'/%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 16 16' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 4l8 8M12 4l-8 8'/%3E%3C/svg%3E") center / contain no-repeat; }
#products .jp-chips .wpgb-button-control::before, #products .jp-chips .wpgb-button-control::after { display: none !important; }
#products .jp-chips .wpgb-button:hover .wpgb-button-control { color: #004C97; }
#products .jp-resultbar { align-items: center !important; }
#products .jp-resultbar .jp-clear { line-height: calc(18px * var(--t, 1)); }

/* "Ask me for a quote": Elementor button widget (class jp-quote-contact) laid over the bottom of the photo */
.e-con:has(> .elementor-widget-button.jp-quote-contact) { position: relative; }
.elementor-widget-button.jp-quote-contact { position: absolute !important; left: 0; right: 0; bottom: 0; top: auto; margin: 0 !important; width: 100% !important; z-index: 2; }
.elementor-widget-button.jp-quote-contact .elementor-widget-container { margin: 0 !important; padding: 0 !important; }
.elementor-widget-button.jp-quote-contact .elementor-button { display: flex !important; align-items: center; justify-content: center; width: 100%; height: calc(44px * var(--s, 1)); padding: 0 calc(16px * var(--s, 1)) !important; background: #004C97 !important; color: #fff !important; font: 500 calc(14px * var(--t, 1))/1 Inter, sans-serif !important; letter-spacing: 0 !important; text-transform: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; transition: background 150ms ease-out; }
.elementor-widget-button.jp-quote-contact .elementor-button:hover { background: #003A74 !important; }
.elementor-widget-button.jp-quote-contact .elementor-button.is-flash { animation: jpQuoteFlash 1.6s ease-out 0.5s 1; }
@keyframes jpQuoteFlash { 0%, 100% { outline: 2px solid rgba(255, 255, 255, 0); outline-offset: 0; } 25% { outline: 2px solid rgba(255, 255, 255, 1); outline-offset: -5px; } 70% { outline: 2px solid rgba(255, 255, 255, 0); outline-offset: -8px; } }
@media (prefers-reduced-motion: reduce) { .elementor-widget-button.jp-quote-contact .elementor-button.is-flash { animation: none; } }
@media (max-width: 600px) { .elementor-widget-button.jp-quote-contact .elementor-button { height: 36px; font-size: 13px !important; } }
/* Products section: intro and CTA are Elementor widgets around the catalog shortcode */
#products.jp-products { padding-top: 0 !important; padding-bottom: 0 !important; }

/* Card: the photo and title also open Quick view; hover shows it is clickable */
#products .jp-card__plate, #products .jp-card__title { cursor: pointer; }
#products .jp-card__plate { overflow: hidden; transition: background 200ms ease-out; }
#products .jp-card__plate img { transition: transform 300ms ease-out; }
@media (hover: hover) {
	#products .jp-card:has(.jp-card__plate:hover, .jp-card__title:hover) .jp-card__plate { background: #E6ECF1; }
	#products .jp-card:has(.jp-card__plate:hover, .jp-card__title:hover) .jp-card__plate img { transform: scale(1.04); }
	#products .jp-card:has(.jp-card__plate:hover, .jp-card__title:hover) .jp-card__title { text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
	#products .jp-card:has(.jp-card__plate:hover, .jp-card__title:hover) .jp-card__foot { background: var(--jp-hover) !important; }
	#products .jp-card:has(.jp-card__plate:hover, .jp-card__title:hover) .jp-card__qv { text-decoration: underline; text-underline-offset: 3px; }
}
@media (prefers-reduced-motion: reduce) { #products .jp-card__plate img { transition: none; } }

/* Quick view inline in the card (mobile): the card already has side padding, so no second inset */
#products .jp-card__inline .jp-qv__info { padding: 4px 0 0 !important; }
#products .jp-card__inline .jp-qv__actions { padding-right: 0 !important; margin-top: 8px; }

/* Mobile menu extras (Contact Us, phone, email): an Elementor container in the header, shown only inside the open mobile menu */
body:not(.elementor-editor-active) .elementor-location-header .jp-mnav-extra { display: none !important; }

/* Mobile menu (Figma: Mobilmeny A, kontakt på to rader) */
.elementor-location-header .elementor-menu-toggle { width: 44px !important; height: 44px !important; padding: 0 !important; margin: 0 !important; background: #003A74 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; align-items: center; justify-content: center; position: relative; }
.elementor-location-header .elementor-menu-toggle svg, .elementor-location-header .elementor-menu-toggle i { display: none !important; }
.elementor-location-header .elementor-menu-toggle::before { content: ""; width: 24px; height: 24px; background: #fff; -webkit-mask: var(--jp-ico-burger) center / 24px 24px no-repeat; mask: var(--jp-ico-burger) center / 24px 24px no-repeat; }
.elementor-location-header .elementor-menu-toggle.elementor-active::before { -webkit-mask-image: var(--jp-ico-close); mask-image: var(--jp-ico-close); }
.elementor-location-header .elementor-menu-toggle:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
:root { --jp-ico-burger: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='2' y='5' width='20' height='2.5'/%3E%3Crect x='2' y='10.75' width='20' height='2.5'/%3E%3Crect x='2' y='16.5' width='20' height='2.5'/%3E%3C/svg%3E"); --jp-ico-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4l16 16M20 4L4 20' stroke='%23000' stroke-width='2.5' stroke-linecap='square' fill='none'/%3E%3C/svg%3E"); }
html.jp-menu-open, html.jp-menu-open body { overflow: hidden !important; }
html.jp-menu-open .elementor-location-header .elementor-element.elementor-element-75a2547e { background: #004C97 !important; }
html.jp-menu-open .elementor-location-header .elementor-element-72176157 nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { position: fixed !important; top: calc(var(--jp-hdr-n) * 1px + var(--jp-ab, 0px)) !important; left: 0 !important; right: 0 !important; bottom: 0 !important; width: auto !important; max-height: none !important; height: auto !important; margin: 0 !important; margin-top: 0 !important; padding: 32px var(--jp-gutter) 40px !important; background: #004C97 !important; transform: none !important; overflow-y: auto !important; display: flex !important; flex-direction: column; z-index: 9998; box-shadow: none !important; border: 0 !important; }
html.jp-menu-open .elementor-location-header .elementor-element-72176157 nav.elementor-nav-menu--dropdown > ul { border-top: 1px solid #2F6AAE; flex: none; display: block !important; width: 100% !important; text-align: left !important; }
html.jp-menu-open .elementor-location-header .elementor-element-72176157 nav.elementor-nav-menu--dropdown > ul > li { border: 0 !important; display: block !important; width: 100% !important; text-align: left !important; }
html.jp-menu-open .elementor-location-header .elementor-element-72176157 nav.elementor-nav-menu--dropdown > ul > li > a, html.jp-menu-open .elementor-location-header .elementor-element-72176157 nav.elementor-nav-menu--dropdown > ul > li > a:hover, html.jp-menu-open .elementor-location-header .elementor-element-72176157 nav.elementor-nav-menu--dropdown > ul > li > a.elementor-item-active { display: block !important; padding: 22px 0 !important; margin: 0 !important; font: 600 32px/40px Inter, sans-serif !important; letter-spacing: -0.01em !important; color: #fff !important; background: none !important; border: 0 !important; border-bottom: 1px solid #2F6AAE !important; text-align: left !important; justify-content: flex-start !important; }
html.jp-menu-open .elementor-location-header .elementor-element-72176157 nav.elementor-nav-menu--dropdown > ul > li > a:active { color: #C9DCEF !important; }
.elementor-location-header nav.elementor-nav-menu--dropdown .jp-mnav-extra { display: flex !important; flex-direction: column !important; flex: 1 0 auto; width: 100% !important; max-width: none !important; min-height: 0 !important; margin: 40px 0 0 !important; padding: 0 !important; gap: 0 !important; background: none !important; }
.jp-mnav-extra .elementor-widget, .jp-mnav-extra .elementor-widget-container { width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-location-header .jp-mnav-extra .jp-mnav-cta a.elementor-button { display: flex !important; align-items: center; justify-content: center; width: 100%; height: 56px; padding: 0 !important; background: #5CB8B2 !important; color: #fff !important; font: 600 17px/24px Inter, sans-serif !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; text-transform: none !important; letter-spacing: 0 !important; }
.jp-mnav-extra .jp-mnav-cta .elementor-button:hover { background: #4CA8A2 !important; }
.jp-mnav-extra .jp-mnav-contact { margin-top: auto !important; padding-top: 32px !important; }
.jp-mnav-extra .jp-mnav-contact p { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 !important; padding: 16px 0 !important; font: 400 14px/20px Inter, sans-serif !important; color: #C9DCEF !important; }
.jp-mnav-extra .jp-mnav-contact p + p { border-top: 1px solid rgba(255, 255, 255, 0.14); }
.jp-mnav-extra .jp-mnav-contact p:last-child { border-bottom: 1px solid rgba(255, 255, 255, 0.14); }
.elementor-location-header .jp-mnav-extra .jp-mnav-contact p a { display: inline !important; padding: 0 !important; margin: 0 !important; border: 0 !important; background: none !important; font: 600 17px/24px Inter, sans-serif !important; color: #fff !important; text-decoration: none !important; }
.elementor-location-header .jp-mnav-extra .jp-mnav-cta a.elementor-button { margin: 0 !important; }
.jp-mnav-extra .jp-mnav-note { margin-top: 16px !important; }
.jp-mnav-extra .jp-mnav-note, .jp-mnav-extra .jp-mnav-note p { font: 400 15px/22px Inter, sans-serif !important; color: #C9DCEF !important; margin: 0 !important; text-wrap: pretty; }
@media (prefers-reduced-motion: no-preference) { html.jp-menu-open .elementor-location-header .elementor-element-72176157 nav.elementor-nav-menu--dropdown { animation: jpMenuIn 180ms ease-out; } }
@keyframes jpMenuIn { from { opacity: 0; } to { opacity: 1; } }

/* Instant filter: hidden cards */
#products .jp-card.is-filtered { display: none !important; }

/* Facets are interactive straight away (WP Grid Builder's own loading state is not used) */
#products .wpgb-facet.wpgb-loading { pointer-events: auto !important; opacity: 1 !important; }

/* Facet basics (previously from WP Grid Builder's stylesheet) */
#products .wpgb-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
#products .wpgb-facet [role="button"] { cursor: pointer; user-select: none; }
#products .wpgb-facet [role="button"]:focus-visible { outline: 2px solid #004C97; outline-offset: 2px; }
#products .jp-group .wpgb-checkbox-control::after { content: ""; position: absolute; left: 50%; top: 45%; width: 30%; height: 55%; border: solid #fff; border-width: 0 2px 2px 0; transform: translate(-50%, -50%) rotate(45deg); opacity: 0; }
#products .jp-group .wpgb-checkbox[aria-pressed="true"] .wpgb-checkbox-control::after { opacity: 1; }
#products .jp-group li[hidden] { display: none !important; }
#products .jp-group [aria-disabled="true"] { cursor: default; }
#products .wpgb-facet { opacity: 1 !important; }

/* Jupa page */
:root { --s: 1; --t: 1; --jp-gutter: max(80px, calc((100vw - 1280px) / 2)); }
body { font-family: Inter, system-ui, sans-serif; }


.elementor-location-header .elementor-element.elementor-element-75a2547e { background: transparent !important; transition: background-color 200ms ease-out, height 200ms ease-out; height: calc(96px * var(--s, 1)) !important; min-height: 0 !important; padding: 0 var(--jp-gutter) !important; display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: space-between !important; }
body.jp-scrolled .elementor-location-header .elementor-element.elementor-element-75a2547e, body:not(.home) .elementor-location-header .elementor-element.elementor-element-75a2547e { background: #004C97 !important; }
.elementor-location-header .elementor-element.elementor-element-53c5fd20 { width: auto !important; height: auto !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; flex: none !important; background: transparent !important; }
.elementor-location-header .elementor-element.elementor-element-eb3a483 { width: auto !important; margin: 0 !important; padding: 0 !important; }
.elementor-location-header .elementor-element.elementor-element-eb3a483 a { display: block; width: calc(61px * var(--s, 1)); height: calc(56px * var(--s, 1)); overflow: hidden; transition: width 200ms ease-out, height 200ms ease-out; }
.elementor-location-header .elementor-element.elementor-element-eb3a483 img { width: calc(61.33px * var(--s, 1)) !important; height: auto !important; max-width: none !important; display: block; margin: 0 !important; transition: width 200ms ease-out, margin 200ms ease-out; }
body.jp-scrolled .elementor-location-header .elementor-element.elementor-element-eb3a483 a { width: calc(44px * var(--s, 1)); height: calc(40px * var(--s, 1)); }
body.jp-scrolled .elementor-location-header .elementor-element.elementor-element-eb3a483 img { width: calc(43.8px * var(--s, 1)) !important; margin-left: 0 !important; }
.elementor-location-header .elementor-element.elementor-element-7f53ff97 { flex: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; display: flex !important; flex-direction: row !important; align-items: center !important; gap: calc(48px * var(--s, 1)) !important; min-height: 0 !important; }
.elementor-location-header .elementor-element.elementor-element-72176157 .elementor-nav-menu > li > a { font: 500 calc(16px * var(--t, 1))/calc(22px * var(--t, 1)) Inter, sans-serif !important; color: #fff !important; padding: 0 !important; margin: 0 !important; }
.elementor-location-header .elementor-element.elementor-element-72176157 .elementor-nav-menu { gap: calc(40px * var(--s, 1)) !important; }
.elementor-location-header .elementor-element.elementor-element-72176157 .elementor-nav-menu > li > a:hover { text-decoration: underline; text-underline-offset: calc(6px * var(--s, 1)); }
.elementor-location-header .elementor-element.elementor-element-72176157 .elementor-nav-menu--main .elementor-item:after, .elementor-location-header .elementor-element.elementor-element-72176157 .elementor-nav-menu--main .elementor-item:before { display: none !important; }
.elementor-location-header .elementor-element.elementor-element-601ce64e { margin: 0 !important; width: auto !important; }
.elementor-location-header .elementor-element.elementor-element-601ce64e .elementor-button { width: calc(120px * var(--s, 1)); height: calc(40px * var(--s, 1)); padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; background: #5CB8B2 !important; color: #fff !important; font: 600 calc(15px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif !important; border-radius: 0 !important; border: 0 !important; box-shadow: none !important; transition: background 150ms ease-out; }
.elementor-location-header .elementor-element.elementor-element-601ce64e .elementor-button:hover { background: #4CA8A2 !important; }

body.home .elementor-location-header .elementor-sticky__spacer { display: none !important; }
body.home .elementor-location-header + * { margin-top: 0 !important; padding-top: 0 !important; }


.elementor-element.elementor-element-4ee8635 { min-height: calc(760px * var(--s, 1)) !important; height: calc(760px * var(--s, 1)); padding: 0 var(--jp-gutter) calc(96px * var(--s, 1)) !important; display: flex !important; flex-direction: column !important; justify-content: flex-end !important; margin: 0 !important; position: relative; }
.elementor-element.elementor-element-4ee8635::before, .elementor-element.elementor-element-4ee8635 > .elementor-background-overlay { content: "" !important; display: block !important; position: absolute !important; inset: 0 !important; z-index: 1 !important; background: linear-gradient(180deg, rgba(0, 58, 116, .15) 0%, rgba(0, 58, 116, .85) 100%) !important; opacity: 1 !important; mix-blend-mode: normal !important; }
.elementor-element.elementor-element-4ee8635 > .elementor-background-video-container { z-index: 0 !important; }
.elementor-element.elementor-element-70e4748 { display: flex !important; flex-direction: column !important; flex-wrap: nowrap !important; max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; gap: 0 !important; align-items: flex-start !important; position: relative; z-index: 2; }
.elementor-element.elementor-element-646e319 { align-self: flex-start !important; width: calc(645px * var(--s, 1)) !important; max-width: 100% !important; margin: 0 0 calc(24px * var(--s, 1)) !important; }
.elementor-element.elementor-element-646e319 .elementor-heading-title { font: 600 calc(64px * var(--s, 1))/calc(70px * var(--s, 1)) Inter, sans-serif !important; letter-spacing: -0.02em !important; color: #fff !important; }
.elementor-element.elementor-element-0d5e976 { align-self: flex-start !important; width: calc(524px * var(--s, 1)) !important; max-width: 100% !important; margin: 0 0 calc(24px * var(--s, 1)) !important; }
.elementor-element.elementor-element-0d5e976, .elementor-element.elementor-element-0d5e976 p { font: 400 calc(20px * var(--t, 1))/calc(30px * var(--t, 1)) Inter, sans-serif !important; color: #DCE8F3 !important; margin: 0 !important; }
.elementor-element.elementor-element-e1e2f11 { margin: 0 !important; align-self: flex-start !important; width: auto !important; }
.elementor-element.elementor-element-e1e2f11 .elementor-button { height: calc(52px * var(--s, 1)); padding: 0 calc(28px * var(--s, 1)) !important; display: inline-flex; align-items: center; background: #5CB8B2 !important; color: #fff !important; font: 600 calc(16px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif !important; border-radius: 0 !important; border: 0 !important; box-shadow: none !important; transition: background 150ms ease-out; }
.elementor-element.elementor-element-e1e2f11 .elementor-button:hover { background: #4CA8A2 !important; }


.elementor-element.elementor-element-5367a38 { background: #004C97 !important; padding: calc(72px * var(--s, 1)) var(--jp-gutter) calc(80px * var(--s, 1)) !important; margin: 0 !important; min-height: 0 !important; }
.elementor-element.elementor-element-693a7871 { max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 calc(60px * var(--s, 1)) !important; }
.elementor-element.elementor-element-84e72fb, .elementor-element.elementor-element-5ec2e958, .elementor-element.elementor-element-57cf3b4 { width: auto !important; padding: 0 !important; margin: 0 !important; gap: 0 !important; display: block !important; }
.elementor-element.elementor-element-47a44e4b, .elementor-element.elementor-element-624e748f, .elementor-element.elementor-element-1511ae0 { margin: 0 0 calc(40px * var(--s, 1)) !important; padding: 0 !important; }
.elementor-element.elementor-element-9243e27, .elementor-element.elementor-element-27439ec0, .elementor-element.elementor-element-c83a171 { margin: 0 0 calc(28px * var(--s, 1)) !important; }
.elementor-element.elementor-element-9243e27 .elementor-heading-title, .elementor-element.elementor-element-27439ec0 .elementor-heading-title, .elementor-element.elementor-element-c83a171 .elementor-heading-title { font: 600 calc(32px * var(--s, 1))/calc(38px * var(--s, 1)) Inter, sans-serif !important; letter-spacing: -0.01em !important; color: #fff !important; }
.elementor-element.elementor-element-5600065b, .elementor-element.elementor-element-6dd7de36, .elementor-element.elementor-element-018417b, .elementor-element.elementor-element-5600065b p, .elementor-element.elementor-element-6dd7de36 p, .elementor-element.elementor-element-018417b p { font: 400 calc(16px * var(--t, 1))/calc(26px * var(--t, 1)) Inter, sans-serif !important; color: #C9DCEF !important; margin: 0 !important; }

@media (min-width: 1700px) { :root { --s: 1.25; --t: 1.17; --jp-gutter: max(160px, calc((100vw - 1600px) / 2)); } }
@media (min-width: 2300px) { :root { --s: 1.6; --t: 1.4; --jp-gutter: max(256px, calc((100vw - 2048px) / 2)); } }
@media (max-width: 1360px) { :root { --jp-gutter: 48px; } }
@media (max-width: 1180px) { :root { --jp-gutter: 40px; } .elementor-location-header .elementor-element.elementor-element-72176157 .elementor-nav-menu { gap: 32px !important; } .elementor-element.elementor-element-4ee8635 { height: 640px; min-height: 640px !important; } }
@media (max-width: 900px) {
	:root { --jp-gutter: 32px; }
	.elementor-element.elementor-element-693a7871 { grid-template-columns: 1fr; gap: 40px !important; }
	.elementor-element.elementor-element-646e319 .elementor-heading-title { font-size: 44px !important; line-height: 50px !important; }
}
@media (max-width: 600px) {
	:root { --jp-gutter: 20px; --jp-hdr-n: 72; }
	.elementor-location-header .elementor-element.elementor-element-75a2547e { height: 72px !important; }
	body.jp-scrolled { --jp-hdr-n: 56; }
	body.jp-scrolled .elementor-location-header .elementor-element.elementor-element-75a2547e { height: 56px !important; }
	.elementor-location-header .elementor-element.elementor-element-53c5fd20 { height: 72px !important; }
	.elementor-element.elementor-element-4ee8635 { height: 600px; min-height: 600px !important; padding-bottom: 56px !important; }
	.elementor-element.elementor-element-646e319 .elementor-heading-title { font-size: 40px !important; line-height: 46px !important; }
	.elementor-element.elementor-element-0d5e976, .elementor-element.elementor-element-0d5e976 p { font-size: 17px !important; line-height: 27px !important; }
	.elementor-element.elementor-element-5367a38 { padding: 56px var(--jp-gutter) !important; }
	.elementor-element.elementor-element-9243e27 .elementor-heading-title, .elementor-element.elementor-element-27439ec0 .elementor-heading-title, .elementor-element.elementor-element-c83a171 .elementor-heading-title { font-size: 28px !important; line-height: 34px !important; }
}

.elementor-element.elementor-element-47a44e4b .elementor-divider__text, .elementor-element.elementor-element-624e748f .elementor-divider__text, .elementor-element.elementor-element-1511ae0 .elementor-divider__text { font: 600 calc(36px * var(--s, 1))/calc(40px * var(--s, 1)) Inter, sans-serif !important; color: #5CB8B2 !important; letter-spacing: -0.01em; margin: 0 !important; padding: 0 !important; flex: none; order: -1; }
.elementor-element.elementor-element-47a44e4b .elementor-divider-separator::before, .elementor-element.elementor-element-624e748f .elementor-divider-separator::before, .elementor-element.elementor-element-1511ae0 .elementor-divider-separator::before { display: none !important; }
.elementor-element.elementor-element-693a7871, .elementor-element.elementor-element-84e72fb, .elementor-element.elementor-element-5ec2e958, .elementor-element.elementor-element-57cf3b4 { min-height: 0 !important; height: auto !important; }

.elementor-element.elementor-element-47a44e4b .elementor-divider, .elementor-element.elementor-element-624e748f .elementor-divider, .elementor-element.elementor-element-1511ae0 .elementor-divider { padding: 0 !important; }
.elementor-element.elementor-element-47a44e4b .elementor-divider-separator, .elementor-element.elementor-element-624e748f .elementor-divider-separator, .elementor-element.elementor-element-1511ae0 .elementor-divider-separator { display: flex !important; align-items: center !important; gap: calc(16px * var(--s, 1)); width: 100% !important; border: 0 !important; }
.elementor-element.elementor-element-47a44e4b .elementor-divider-separator::after, .elementor-element.elementor-element-624e748f .elementor-divider-separator::after, .elementor-element.elementor-element-1511ae0 .elementor-divider-separator::after { content: "" !important; display: block !important; flex: 1 !important; height: 0 !important; border-top: 1px solid #2F6AAE !important; border-bottom: 0 !important; margin: 0 !important; -webkit-mask: none !important; mask: none !important; background: none !important; }
.elementor-element.elementor-element-5367a38 > .e-con-inner, .elementor-element.elementor-element-4ee8635 > .e-con-inner, .elementor-location-header .elementor-element.elementor-element-75a2547e > .e-con-inner { max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; }
.elementor-element.elementor-element-5367a38 > .e-con-inner > .elementor-element-693a7871 { width: 100% !important; flex: 1 1 100% !important; }
.elementor-element.elementor-element-0d5e976 { padding-bottom: calc(24px * var(--s, 1)) !important; }


:root { --jp-hdr-n: 96; --jp-ab: 0px; }
body.jp-scrolled { --jp-hdr-n: 64; }
body.admin-bar { --jp-ab: 32px; }
#products.jp-products { --jp-header: calc(var(--jp-hdr-n) * 1px * var(--s, 1) + var(--jp-ab)) !important; }
body.jp-scrolled .elementor-location-header .elementor-element.elementor-element-75a2547e { height: calc(64px * var(--s, 1)) !important; }
#products .jp-stick { transition: transform 220ms cubic-bezier(.2, .7, .2, 1), opacity 160ms ease-out, visibility 0s linear 220ms, top 200ms ease-out !important; }
#products.jp-products.is-stuck .jp-stick { transition: transform 220ms cubic-bezier(.2, .7, .2, 1), opacity 160ms ease-out, visibility 0s, top 200ms ease-out !important; }
#products .jp-dock, #products .jp-rail { transition: top 200ms ease-out; }


.elementor-element.elementor-element-9133213 { padding: 0 var(--jp-gutter) calc(96px * var(--s, 1)) !important; margin: 0 !important; min-height: 0 !important; background: linear-gradient(180deg, #004C97 0, #004C97 calc((100vw - 2 * var(--jp-gutter)) * 0.28125), transparent calc((100vw - 2 * var(--jp-gutter)) * 0.28125)) !important; }
.elementor-element.elementor-element-9133213 > .e-con-inner, .elementor-element.elementor-element-1ddb41c { max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; min-height: 0 !important; }
.elementor-element.elementor-element-e50b096 { width: 100% !important; margin: 0 !important; }
.elementor-element.elementor-element-e50b096 .elementor-wrapper, .elementor-element.elementor-element-e50b096 .elementor-custom-embed-image-overlay { aspect-ratio: 16 / 9; height: auto !important; border-radius: 0 !important; }
.elementor-element.elementor-element-5367a38 { padding-bottom: calc(80px * var(--s, 1)) !important; }
.elementor-element.elementor-element-5600065b, .elementor-element.elementor-element-6dd7de36, .elementor-element.elementor-element-018417b { padding-top: calc(8px * var(--s, 1)) !important; }


.elementor-element.elementor-element-6bed424e { padding: calc(24px * var(--s, 1)) var(--jp-gutter) calc(96px * var(--s, 1)) !important; margin: 0 !important; min-height: 0 !important; background: #fff !important; }
.elementor-element.elementor-element-6bed424e, .elementor-element.elementor-element-6bed424e > .e-con-inner { display: grid !important; grid-template-columns: repeat(12, minmax(0, 1fr)) !important; column-gap: calc(24px * var(--s, 1)) !important; row-gap: 0 !important; align-items: start !important; }
.elementor-element.elementor-element-6bed424e > .e-con-inner { grid-column: 1 / -1; max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; }
.elementor-element.elementor-element-1e2b1df9 { grid-column: 1 / span 5; width: auto !important; padding: 0 !important; margin: 0 !important; display: block !important; min-height: 0 !important; }
.elementor-element.elementor-element-1914a959 { grid-column: 6 / span 7; width: auto !important; padding: calc(12px * var(--s, 1)) 0 0 !important; margin: 0 !important; display: block !important; min-height: 0 !important; }
.elementor-element.elementor-element-5a51ef25 { margin: 0 0 calc(20px * var(--s, 1)) !important; text-align: left !important; }
.elementor-element.elementor-element-5a51ef25 .elementor-heading-title { font: 600 calc(40px * var(--s, 1))/calc(48px * var(--s, 1)) Inter, sans-serif !important; letter-spacing: -0.01em !important; color: #004C97 !important; text-align: left !important; }
.elementor-element.elementor-element-802d473 { margin: 0 !important; width: calc(370px * var(--s, 1)) !important; max-width: 100% !important; }
.elementor-element.elementor-element-802d473, .elementor-element.elementor-element-802d473 p { font: 500 calc(20px * var(--t, 1))/calc(30px * var(--t, 1)) Inter, sans-serif !important; color: #0F1E2E !important; margin: 0 !important; text-align: left !important; }
.elementor-element.elementor-element-bc23f84 { margin: 0 !important; }
.elementor-element.elementor-element-bc23f84, .elementor-element.elementor-element-bc23f84 p { font: 400 calc(17px * var(--t, 1))/calc(28px * var(--t, 1)) Inter, sans-serif !important; color: #5B6B7B !important; margin: 0 !important; text-align: left !important; }
.elementor-element.elementor-element-32bdde82 { grid-column: 1 / -1; display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: calc(24px * var(--s, 1)) !important; width: auto !important; padding: 0 !important; margin: calc(84px * var(--s, 1)) 0 0 !important; min-height: 0 !important; }
.elementor-element.elementor-element-166c0459, .elementor-element.elementor-element-3877b75a, .elementor-element.elementor-element-5fc58f89, .elementor-element.elementor-element-2536cea6 { display: block !important; width: auto !important; margin: 0 !important; padding: calc(12px * var(--s, 1)) 0 0 !important; border-top: 1px solid #D5DEE7 !important; min-height: 0 !important; text-align: left !important; }
.elementor-element.elementor-element-db770a3, .elementor-element.elementor-element-7959dcfc, .elementor-element.elementor-element-78cf8739, .elementor-element.elementor-element-634a1d96 { margin: 0 0 calc(12px * var(--s, 1)) !important; }
.elementor-element.elementor-element-db770a3 .elementor-counter-number-wrapper, .elementor-element.elementor-element-7959dcfc .elementor-counter-number-wrapper, .elementor-element.elementor-element-78cf8739 .elementor-counter-number-wrapper, .elementor-element.elementor-element-634a1d96 .elementor-counter-number-wrapper { font: 600 calc(48px * var(--s, 1))/calc(52px * var(--s, 1)) Inter, sans-serif !important; letter-spacing: -0.015em !important; color: #004C97 !important; justify-content: flex-start !important; text-align: left !important; font-variant-numeric: tabular-nums; }
.elementor-element.elementor-element-db770a3 .elementor-counter, .elementor-element.elementor-element-7959dcfc .elementor-counter, .elementor-element.elementor-element-78cf8739 .elementor-counter, .elementor-element.elementor-element-634a1d96 .elementor-counter { justify-content: flex-start !important; align-items: flex-start !important; }
.elementor-element.elementor-element-db770a3 .elementor-counter-number-wrapper span, .elementor-element.elementor-element-7959dcfc .elementor-counter-number-wrapper span, .elementor-element.elementor-element-78cf8739 .elementor-counter-number-wrapper span, .elementor-element.elementor-element-634a1d96 .elementor-counter-number-wrapper span { font: inherit !important; color: inherit !important; flex: none !important; text-align: left !important; }
.elementor-element.elementor-element-38d48700, .elementor-element.elementor-element-540f66e2, .elementor-element.elementor-element-16270e78, .elementor-element.elementor-element-3a8567a8 { margin: 0 !important; }
.elementor-element.elementor-element-38d48700, .elementor-element.elementor-element-540f66e2, .elementor-element.elementor-element-16270e78, .elementor-element.elementor-element-3a8567a8, .elementor-element.elementor-element-38d48700 p, .elementor-element.elementor-element-540f66e2 p, .elementor-element.elementor-element-16270e78 p, .elementor-element.elementor-element-3a8567a8 p { font: 400 calc(15px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif !important; color: #5B6B7B !important; margin: 0 !important; text-align: left !important; }
@media (max-width: 900px) {
	.elementor-element.elementor-element-1e2b1df9, .elementor-element.elementor-element-1914a959 { grid-column: 1 / -1; }
	.elementor-element.elementor-element-1914a959 { padding-top: 24px !important; }
	.elementor-element.elementor-element-32bdde82 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; margin-top: 48px !important; row-gap: 32px !important; }
}
@media (max-width: 600px) { .elementor-element.elementor-element-6bed424e { padding-bottom: 56px !important; } .elementor-element.elementor-element-5a51ef25 .elementor-heading-title { font-size: 32px !important; line-height: 38px !important; } }

.elementor-element.elementor-element-38d48700, .elementor-element.elementor-element-540f66e2, .elementor-element.elementor-element-16270e78, .elementor-element.elementor-element-3a8567a8 { padding-top: calc(8px * var(--s, 1)) !important; }


.elementor-element.elementor-element-2b6aa219, .elementor-element.elementor-element-2b6aa219 > .e-con-inner { display: grid !important; grid-template-columns: repeat(12, minmax(0, 1fr)) !important; column-gap: calc(24px * var(--s, 1)) !important; row-gap: 0 !important; align-items: start !important; }
.elementor-element.elementor-element-2b6aa219 { padding: calc(96px * var(--s, 1)) var(--jp-gutter) !important; margin: 0 !important; min-height: 0 !important; background: #fff !important; }
.elementor-element.elementor-element-2b6aa219 > .e-con-inner { grid-column: 1 / -1; max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; }
.elementor-element.elementor-element-77eb58ea { display: none !important; }
.elementor-element.elementor-element-ef62f50 { grid-column: 1 / span 5; margin: 0 !important; }
.elementor-element.elementor-element-ef62f50 .elementor-heading-title { font: 600 calc(40px * var(--s, 1))/calc(48px * var(--s, 1)) Inter, sans-serif !important; letter-spacing: -0.01em !important; color: #004C97 !important; text-align: left !important; }
.elementor-element.elementor-element-503451a { grid-column: 6 / span 7; width: auto !important; padding: 0 !important; margin: 0 !important; min-height: 0 !important; display: block !important; }
.elementor-element.elementor-element-765c1c6, .elementor-element.elementor-element-765c1c6 p { font: 400 calc(17px * var(--t, 1))/calc(28px * var(--t, 1)) Inter, sans-serif !important; color: #5B6B7B !important; margin: 0 !important; text-align: left !important; }
.elementor-element.elementor-element-6c26dcd4, .elementor-element.elementor-element-6c26dcd4 > .e-con-inner { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: calc(40px * var(--s, 1)) calc(24px * var(--s, 1)) !important; }
.elementor-element.elementor-element-6c26dcd4 { grid-column: 1 / -1; width: auto !important; padding: 0 !important; margin: calc(56px * var(--s, 1)) 0 0 !important; min-height: 0 !important; }
.elementor-element.elementor-element-6c26dcd4 > .e-con-inner { grid-column: 1 / -1; max-width: none !important; width: 100% !important; padding: 0 !important; }
.elementor-element.elementor-element-6c26dcd4 > .e-con, .elementor-element.elementor-element-6c26dcd4 > .e-con-inner > .e-con { display: block !important; width: auto !important; padding: 0 !important; margin: 0 !important; min-height: 0 !important; text-align: left !important; }
.elementor-element.elementor-element-6c26dcd4 > .e-con > .e-con:first-child, .elementor-element.elementor-element-6c26dcd4 > .e-con-inner > .e-con > .e-con:first-child { display: block !important; width: 100% !important; aspect-ratio: 302 / 340; padding: 0 !important; margin: 0 !important; background: #EEF2F5 !important; overflow: hidden; min-height: 0 !important; }
.elementor-element.elementor-element-6c26dcd4 .elementor-widget-image, .elementor-element.elementor-element-6c26dcd4 .elementor-widget-image .elementor-widget-container { width: 100% !important; height: 100% !important; margin: 0 !important; }
.elementor-element.elementor-element-6c26dcd4 .elementor-widget-image img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; border-radius: 0 !important; display: block; }
.elementor-element.elementor-element-6c26dcd4 .elementor-widget-heading { margin: calc(14px * var(--s, 1)) 0 0 !important; }
.elementor-element.elementor-element-6c26dcd4 .elementor-widget-heading .elementor-heading-title { font: 600 calc(17px * var(--t, 1))/calc(23px * var(--t, 1)) Inter, sans-serif !important; color: #0F1E2E !important; text-align: left !important; }
.elementor-element.elementor-element-6c26dcd4 .e-con > .elementor-widget-text-editor { margin: calc(4px * var(--s, 1)) 0 0 !important; }
.elementor-element.elementor-element-6c26dcd4 .e-con > .elementor-widget-text-editor, .elementor-element.elementor-element-6c26dcd4 .e-con > .elementor-widget-text-editor p { font: 400 calc(14px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif !important; color: #5B6B7B !important; margin-bottom: 0 !important; text-align: left !important; }
.elementor-element.elementor-element-6c26dcd4 .elementor-widget-divider, .elementor-element.elementor-element-6c26dcd4 .elementor-widget-social-icons { display: none !important; }
.elementor-element.elementor-element-6c26dcd4 > .e-con > .e-con:last-child, .elementor-element.elementor-element-6c26dcd4 > .e-con-inner > .e-con > .e-con:last-child { display: block !important; padding: 0 !important; margin: calc(14px * var(--s, 1)) 0 0 !important; min-height: 0 !important; }
.elementor-element.elementor-element-6c26dcd4 .e-con > .e-con:last-child .e-con, .elementor-element.elementor-element-6c26dcd4 .e-con > .e-con:last-child .e-con:first-child { aspect-ratio: auto !important; background: none !important; padding: 0 !important; margin: 0 !important; min-height: 0 !important; width: auto !important; }
.elementor-element.elementor-element-6c26dcd4 .e-con > .e-con:last-child p, .elementor-element.elementor-element-6c26dcd4 .e-con > .e-con:last-child a { font: 400 calc(14px * var(--t, 1))/calc(22px * var(--t, 1)) Inter, sans-serif !important; color: #004C97 !important; margin: 0 !important; text-decoration: none; text-align: left !important; }
.elementor-element.elementor-element-6c26dcd4 .e-con > .e-con:last-child a:hover { text-decoration: underline; text-underline-offset: calc(3px * var(--s, 1)); }


.elementor-element.elementor-element-1ab44a70 { padding: calc(80px * var(--s, 1)) var(--jp-gutter) calc(96px * var(--s, 1)) !important; margin: 0 !important; min-height: 0 !important; background: #F4F7FA !important; display: block !important; }
.elementor-element.elementor-element-1ab44a70 > .e-con-inner { max-width: none !important; width: 100% !important; padding: 0 !important; display: block !important; }
.elementor-element.elementor-element-6e78c07 { margin: 0 0 calc(32px * var(--s, 1)) !important; }
.elementor-element.elementor-element-6e78c07 .elementor-heading-title { font: 600 calc(24px * var(--s, 1))/calc(30px * var(--s, 1)) Inter, sans-serif !important; color: #0F1E2E !important; text-align: left !important; }
.elementor-element.elementor-element-499ca47, .elementor-element.elementor-element-499ca47 > .e-con-inner { display: grid !important; grid-template-columns: repeat(6, minmax(0, 1fr)) !important; gap: calc(24px * var(--s, 1)) !important; }
.elementor-element.elementor-element-499ca47 { width: 100% !important; padding: 0 !important; margin: 0 !important; min-height: 0 !important; }
.elementor-element.elementor-element-499ca47 > .e-con-inner { grid-column: 1 / -1; max-width: none !important; width: 100% !important; padding: 0 !important; }
.elementor-element.elementor-element-499ca47 > .e-con, .elementor-element.elementor-element-499ca47 > .e-con-inner > .e-con { display: flex !important; align-items: center !important; justify-content: center !important; width: auto !important; height: calc(96px * var(--s, 1)); min-height: 0 !important; padding: 0 !important; margin: 0 !important; background: #fff !important; border: 1px solid #D5DEE7 !important; border-radius: 0 !important; box-shadow: none !important; }
.elementor-element.elementor-element-499ca47 .elementor-widget-image, .elementor-element.elementor-element-499ca47 .elementor-widget-image .elementor-widget-container { width: auto !important; margin: 0 !important; display: block; line-height: 0; }
.elementor-element.elementor-element-499ca47 .elementor-widget-image img { width: calc(120px * var(--s, 1)) !important; height: calc(40px * var(--s, 1)) !important; max-width: none !important; max-height: none !important; object-fit: contain; filter: none !important; opacity: 1 !important; }


.elementor-element.elementor-element-78eae30 { position: relative; padding: calc(120px * var(--s, 1)) var(--jp-gutter) !important; margin: 0 !important; min-height: 0 !important; background: linear-gradient(90deg, rgba(0, 58, 116, .94) 0%, rgba(0, 58, 116, .82) 55%, rgba(0, 58, 116, .45) 100%), url(/wp-content/uploads/2026/11/jupa-means-bakgrunn-videostill.jpg) center / cover no-repeat #003A74 !important; }
.elementor-element.elementor-element-78eae30, .elementor-element.elementor-element-78eae30 > .e-con-inner { display: grid !important; grid-template-columns: repeat(12, minmax(0, 1fr)) !important; column-gap: calc(24px * var(--s, 1)) !important; row-gap: 0 !important; align-items: start !important; }
.elementor-element.elementor-element-78eae30 > .e-con-inner { grid-column: 1 / -1; max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; }
.elementor-element.elementor-element-1de9d44 { grid-column: 1 / span 8; width: auto !important; padding: 0 !important; margin: 0 !important; min-height: 0 !important; display: block !important; }
.elementor-element.elementor-element-bf08951 { margin: 0 !important; }
.elementor-element.elementor-element-bf08951 .elementor-heading-title { font: 600 calc(52px * var(--s, 1))/calc(62px * var(--s, 1)) Inter, sans-serif !important; letter-spacing: -0.01em !important; color: #fff !important; text-align: left !important; }
.elementor-element.elementor-element-c18066a { grid-column: 1 / span 4; }
.elementor-element.elementor-element-f03f56f { grid-column: 5 / span 4; }
.elementor-element.elementor-element-c18066a, .elementor-element.elementor-element-f03f56f { width: auto !important; padding: 0 !important; margin: calc(48px * var(--s, 1)) 0 0 !important; min-height: 0 !important; display: block !important; }
.elementor-element.elementor-element-3334909, .elementor-element.elementor-element-ccaf5f9 { margin: 0 !important; }
.elementor-element.elementor-element-3334909, .elementor-element.elementor-element-ccaf5f9, .elementor-element.elementor-element-3334909 p, .elementor-element.elementor-element-ccaf5f9 p { font: 400 calc(16px * var(--t, 1))/calc(26px * var(--t, 1)) Inter, sans-serif !important; color: #C9DCEF !important; text-align: left !important; }
.elementor-element.elementor-element-3334909 p, .elementor-element.elementor-element-ccaf5f9 p { margin: 0 0 calc(16px * var(--s, 1)) !important; }
.elementor-element.elementor-element-3334909 p:last-child, .elementor-element.elementor-element-ccaf5f9 p:last-child { margin-bottom: 0 !important; }


.elementor-element.elementor-element-4bbcc26f { padding: calc(96px * var(--s, 1)) var(--jp-gutter) !important; margin: 0 !important; min-height: 0 !important; background: #fff !important; }
.elementor-element.elementor-element-4bbcc26f, .elementor-element.elementor-element-4bbcc26f > .e-con-inner { display: grid !important; grid-template-columns: repeat(12, minmax(0, 1fr)) !important; grid-template-rows: auto auto 1fr; column-gap: calc(24px * var(--s, 1)) !important; row-gap: 0 !important; align-items: start !important; }
.elementor-element.elementor-element-4bbcc26f > .e-con-inner { grid-column: 1 / -1; grid-row: 1 / -1; max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; }
.elementor-element.elementor-element-312b40c3 { grid-column: 1 / span 5; grid-row: 1; width: calc(353px * var(--s, 1)) !important; max-width: 100% !important; margin: 0 !important; }
.elementor-element.elementor-element-312b40c3 .elementor-heading-title { font: 600 calc(40px * var(--s, 1))/calc(48px * var(--s, 1)) Inter, sans-serif !important; letter-spacing: -0.01em !important; color: #004C97 !important; text-align: left !important; }
.elementor-element.elementor-element-2ca4d85 { grid-column: 1 / span 5; grid-row: 2; margin: calc(16px * var(--s, 1)) 0 0 !important; }
.elementor-element.elementor-element-2ca4d85, .elementor-element.elementor-element-2ca4d85 p { font: 400 calc(16px * var(--t, 1))/calc(24px * var(--t, 1)) Inter, sans-serif !important; color: #5B6B7B !important; margin-bottom: 0 !important; text-align: left !important; }
.elementor-element.elementor-element-0b0522d { grid-column: 6 / span 7; grid-row: 1 / span 3; width: auto !important; margin: 0 !important; }
.elementor-element.elementor-element-0b0522d .e-n-accordion { border-top: 1px solid #D5DEE7; }
.elementor-element.elementor-element-0b0522d .e-n-accordion-item { border: 0 !important; border-bottom: 1px solid #D5DEE7 !important; margin: 0 !important; background: none !important; border-radius: 0 !important; }
.elementor-element.elementor-element-0b0522d .e-n-accordion-item-title { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: calc(24px * var(--s, 1)); padding: calc(20px * var(--s, 1)) 0 !important; margin: 0 !important; background: none !important; border: 0 !important; cursor: pointer; }
.elementor-element.elementor-element-0b0522d .e-n-accordion-item-title-text, .elementor-element.elementor-element-0b0522d .e-n-accordion-item-title-header { font: 500 calc(18px * var(--t, 1))/calc(26px * var(--t, 1)) Inter, sans-serif !important; color: #0F1E2E !important; text-align: left !important; }
.elementor-element.elementor-element-0b0522d .e-n-accordion-item-title:hover .e-n-accordion-item-title-text { color: #004C97 !important; }
.elementor-element.elementor-element-0b0522d .e-n-accordion-item-title-icon { order: 2; flex: none; width: calc(20px * var(--s, 1)); height: calc(20px * var(--s, 1)); display: flex !important; align-items: center; justify-content: center; color: #0F1E2E !important; }
.elementor-element.elementor-element-0b0522d .e-n-accordion-item-title-icon svg, .elementor-element.elementor-element-0b0522d .e-n-accordion-item-title-icon i { width: calc(16px * var(--s, 1)) !important; height: calc(16px * var(--s, 1)) !important; font-size: calc(16px * var(--t, 1)) !important; fill: currentColor !important; color: currentColor !important; }
.elementor-element.elementor-element-0b0522d .e-n-accordion-item > [role="region"], .elementor-element.elementor-element-0b0522d .e-n-accordion-item > .e-con { padding: 0 0 calc(20px * var(--s, 1)) !important; margin: 0 !important; border: 0 !important; background: none !important; min-height: 0 !important; }
.elementor-element.elementor-element-0b0522d .e-n-accordion-item .elementor-widget-text-editor, .elementor-element.elementor-element-0b0522d .e-n-accordion-item .elementor-widget-text-editor p { font: 400 calc(16px * var(--t, 1))/calc(26px * var(--t, 1)) Inter, sans-serif !important; color: #5B6B7B !important; text-align: left !important; }
.elementor-element.elementor-element-0b0522d .e-n-accordion-item .elementor-widget-text-editor p { margin: 0 0 calc(12px * var(--s, 1)) !important; }
.elementor-element.elementor-element-0b0522d .e-n-accordion-item .elementor-widget-text-editor p:last-child { margin-bottom: 0 !important; }

@media (max-width: 900px) {
	.elementor-element.elementor-element-ef62f50, .elementor-element.elementor-element-503451a, .elementor-element.elementor-element-1de9d44, .elementor-element.elementor-element-312b40c3, .elementor-element.elementor-element-2ca4d85 { grid-column: 1 / -1; }
	.elementor-element.elementor-element-503451a { margin-top: 20px !important; }
	.elementor-element.elementor-element-6c26dcd4, .elementor-element.elementor-element-6c26dcd4 > .e-con-inner { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.elementor-element.elementor-element-499ca47, .elementor-element.elementor-element-499ca47 > .e-con-inner { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
	.elementor-element.elementor-element-c18066a, .elementor-element.elementor-element-f03f56f { grid-column: 1 / -1; }
	.elementor-element.elementor-element-f03f56f { margin-top: 16px !important; }
	.elementor-element.elementor-element-0b0522d { grid-column: 1 / -1; grid-row: auto; margin-top: 32px !important; }
	.elementor-element.elementor-element-4bbcc26f, .elementor-element.elementor-element-4bbcc26f > .e-con-inner { grid-template-rows: none; }
	.elementor-element.elementor-element-bf08951 .elementor-heading-title { font-size: 36px !important; line-height: 44px !important; }
}
@media (max-width: 600px) {
	.elementor-element.elementor-element-2b6aa219, .elementor-element.elementor-element-4bbcc26f { padding-top: 56px !important; padding-bottom: 56px !important; }
	.elementor-element.elementor-element-1ab44a70 { padding: 56px var(--jp-gutter) !important; }
	.elementor-element.elementor-element-78eae30 { padding: 72px var(--jp-gutter) !important; }
	.elementor-element.elementor-element-499ca47, .elementor-element.elementor-element-499ca47 > .e-con-inner { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
	.elementor-element.elementor-element-499ca47 > .e-con, .elementor-element.elementor-element-499ca47 > .e-con-inner > .e-con { height: 72px; }
	.elementor-element.elementor-element-ef62f50 .elementor-heading-title, .elementor-element.elementor-element-312b40c3 .elementor-heading-title { font-size: 32px !important; line-height: 38px !important; }
	.elementor-element.elementor-element-bf08951 .elementor-heading-title { font-size: 30px !important; line-height: 38px !important; }
}
.elementor-element.elementor-element-312b40c3, .elementor-element.elementor-element-312b40c3 .elementor-widget-container { display: block !important; justify-self: start !important; }
.elementor-element.elementor-element-312b40c3 .elementor-heading-title { display: block !important; width: 100% !important; }
.elementor-element.elementor-element-4bbcc26f > .e-con-inner { grid-template-rows: min-content min-content 1fr !important; }
.elementor-element.elementor-element-2ca4d85 { align-self: start !important; }
.elementor-element.elementor-element-0b0522d .e-n-accordion-item .e-con, .elementor-element.elementor-element-0b0522d .e-n-accordion-item .e-con-inner { padding-left: 0 !important; padding-right: 0 !important; margin: 0 !important; }
.elementor-element.elementor-element-312b40c3 > .elementor-widget-container { margin: 0 !important; padding: 0 !important; width: 100% !important; max-width: none !important; transform: none !important; text-align: left !important; }
.elementor-element.elementor-element-312b40c3 { height: auto !important; min-height: 0 !important; }


.elementor-location-footer > .e-con, .elementor-location-footer .elementor-element.elementor-element-15af9185, .elementor-location-footer .elementor-element.elementor-element-1ac9b300 { background: #003A74 !important; }
.elementor-location-footer .elementor-element.elementor-element-15af9185 { padding: calc(72px * var(--s, 1)) var(--jp-gutter) calc(48px * var(--s, 1)) !important; margin: 0 !important; min-height: 0 !important; }
.elementor-location-footer .elementor-element.elementor-element-15af9185, .elementor-location-footer .elementor-element.elementor-element-15af9185 > .e-con-inner { display: grid !important; grid-template-columns: repeat(12, minmax(0, 1fr)) !important; grid-template-rows: auto 1fr; column-gap: calc(24px * var(--s, 1)) !important; row-gap: 0 !important; align-items: start !important; }
.elementor-location-footer .elementor-element.elementor-element-15af9185 > .e-con-inner { grid-column: 1 / -1; grid-row: 1 / -1; max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; }
.elementor-location-footer .elementor-element.elementor-element-68136630 { grid-column: 1 / span 5; grid-row: 1; margin: 0 !important; width: auto !important; text-align: left !important; }
.elementor-location-footer .elementor-element.elementor-element-68136630 img { width: calc(61px * var(--s, 1)) !important; height: auto !important; max-width: none !important; display: block; }
.elementor-location-footer .elementor-element.elementor-element-4668070d { grid-column: 1 / span 5; grid-row: 2; margin: calc(28px * var(--s, 1)) 0 0 !important; }
.elementor-location-footer .elementor-element.elementor-element-4668070d, .elementor-location-footer .elementor-element.elementor-element-4668070d p { font: 500 calc(18px * var(--t, 1))/calc(26px * var(--t, 1)) Inter, sans-serif !important; color: #fff !important; margin-bottom: 0 !important; text-align: left !important; }
.elementor-location-footer .elementor-element.elementor-element-403327b7 { grid-column: 6 / span 7; grid-row: 1 / span 2; display: grid !important; grid-template-columns: none !important; grid-auto-flow: column; grid-auto-columns: calc((100% - calc(48px * var(--s, 1))) / 3); justify-content: end; gap: calc(24px * var(--s, 1)) !important; width: auto !important; padding: 0 !important; margin: 0 !important; min-height: 0 !important; }
.elementor-location-footer .elementor-element.elementor-element-403327b7 > .e-con-inner { display: contents !important; }
.elementor-location-footer .elementor-element.elementor-element-7cf538c8, .elementor-location-footer .elementor-element.elementor-element-6a5480c, .elementor-location-footer .elementor-element.elementor-element-5a69df4 { display: block !important; width: auto !important; padding: calc(9px * var(--s, 1)) 0 0 !important; margin: calc(16px * var(--s, 1)) 0 0 !important; border-top: 1px solid #2F6AAE !important; min-height: 0 !important; background: none !important; }
.elementor-location-footer .elementor-element.elementor-element-403327b7 .elementor-icon-box-icon { display: none !important; }
.elementor-location-footer .elementor-element.elementor-element-403327b7 .elementor-icon-box-wrapper { display: block !important; text-align: left !important; }
.elementor-location-footer .elementor-element.elementor-element-403327b7 .elementor-icon-box-title, .elementor-location-footer .elementor-element.elementor-element-403327b7 .elementor-icon-box-title * { font: 600 calc(16px * var(--t, 1))/calc(24px * var(--t, 1)) Inter, sans-serif !important; color: #fff !important; margin: 0 !important; text-decoration: none !important; text-align: left !important; }
.elementor-location-footer .elementor-element.elementor-element-403327b7 a:hover { text-decoration: underline !important; text-underline-offset: calc(3px * var(--s, 1)); }
.elementor-location-footer .elementor-element.elementor-element-189849c6, .elementor-location-footer .elementor-element.elementor-element-5c3d63d9, .elementor-location-footer .elementor-element.elementor-element-4618fc03 { display: none !important; }
.elementor-location-footer .elementor-element.elementor-element-1ac9b300 { padding: 0 var(--jp-gutter) calc(40px * var(--s, 1)) !important; margin: 0 !important; min-height: 0 !important; display: block !important; }
.elementor-location-footer .elementor-element.elementor-element-1ac9b300 > .e-con-inner { max-width: none !important; width: 100% !important; padding: calc(24px * var(--s, 1)) 0 0 !important; display: flex !important; flex-direction: row !important; flex-wrap: wrap; align-items: center !important; justify-content: space-between !important; gap: calc(12px * var(--s, 1)) calc(32px * var(--s, 1)) !important; border-top: 1px solid #2F6AAE; }
.elementor-location-footer .elementor-element.elementor-element-1ac9b300 .e-con { width: auto !important; padding: 0 !important; margin: 0 !important; min-height: 0 !important; display: flex !important; flex-direction: row !important; gap: calc(24px * var(--s, 1)) !important; align-items: center !important; }
.elementor-location-footer .elementor-element.elementor-element-3608ee42 { margin-right: auto !important; }
.elementor-location-footer .elementor-element.elementor-element-1ac9b300 .elementor-widget-text-editor, .elementor-location-footer .elementor-element.elementor-element-1ac9b300 .elementor-widget-text-editor p, .elementor-location-footer .elementor-element.elementor-element-1ac9b300 .elementor-widget-text-editor a { font: 400 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif !important; color: #C9DCEF !important; margin: 0 !important; }
.elementor-location-footer .elementor-element.elementor-element-1ac9b300 .elementor-button { background: none !important; border: 0 !important; padding: 0 !important; font: 400 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif !important; color: #C9DCEF !important; text-decoration: underline !important; text-underline-offset: calc(3px * var(--s, 1)); border-radius: 0 !important; box-shadow: none !important; }
.elementor-location-footer .elementor-element.elementor-element-1ac9b300 .elementor-button:hover { color: #fff !important; }
.elementor-location-footer .elementor-element.elementor-element-1ac9b300 .elementor-widget-button { margin: 0 !important; width: auto !important; }
@media (max-width: 900px) {
	.elementor-location-footer .elementor-element.elementor-element-68136630, .elementor-location-footer .elementor-element.elementor-element-4668070d, .elementor-location-footer .elementor-element.elementor-element-403327b7 { grid-column: 1 / -1; grid-row: auto; }
	.elementor-location-footer .elementor-element.elementor-element-403327b7 { margin-top: 24px !important; justify-content: start; }
}
@media (max-width: 600px) {
	.elementor-location-footer .elementor-element.elementor-element-15af9185 { padding: 56px var(--jp-gutter) 32px !important; }
	.elementor-location-footer .elementor-element.elementor-element-403327b7 { grid-template-columns: 1fr !important; grid-auto-flow: row; grid-auto-columns: auto; gap: 0 !important; }
}

.elementor-location-footer .elementor-element.elementor-element-1ac9b300.e-con-full { display: flex !important; flex-direction: row !important; flex-wrap: wrap; align-items: center !important; justify-content: space-between !important; gap: calc(12px * var(--s, 1)) calc(32px * var(--s, 1)) !important; }
.elementor-location-footer .elementor-element.elementor-element-1ac9b300::before { content: "" !important; position: absolute !important; left: var(--jp-gutter) !important; right: var(--jp-gutter) !important; top: 0 !important; width: auto !important; height: 0 !important; border-top: 1px solid #2F6AAE; background: none !important; }
.elementor-location-footer .elementor-element.elementor-element-1ac9b300 { position: relative; padding-top: calc(24px * var(--s, 1)) !important; }
.elementor-location-footer .elementor-element.elementor-element-15af9185 .elementor-widget > .elementor-widget-container { margin: 0 !important; padding: 0 !important; max-width: none !important; width: 100% !important; transform: none !important; }
.elementor-location-footer .elementor-element.elementor-element-4668070d, .elementor-location-footer .elementor-element.elementor-element-68136630 { width: 100% !important; max-width: calc(400px * var(--s, 1)) !important; justify-self: start !important; }

.elementor-location-footer .elementor-element.elementor-element-7cf538c8, .elementor-location-footer .elementor-element.elementor-element-6a5480c, .elementor-location-footer .elementor-element.elementor-element-5a69df4 { border-radius: 0 !important; border-left: 0 !important; border-right: 0 !important; border-bottom: 0 !important; }

.elementor-element.elementor-element-6c26dcd4 .elementor-widget > .elementor-widget-container { margin: 0 !important; padding: 0 !important; }
.elementor-element.elementor-element-6c26dcd4 .elementor-widget-heading { margin: calc(14px * var(--s, 1)) 0 0 !important; }
.elementor-element.elementor-element-6c26dcd4 .e-con > .elementor-widget-text-editor { margin: calc(4px * var(--s, 1)) 0 0 !important; display: flow-root; }
.elementor-element.elementor-element-6c26dcd4 > .e-con, .elementor-element.elementor-element-6c26dcd4 > .e-con-inner > .e-con, .elementor-element.elementor-element-6c26dcd4 .e-con { border: 0 !important; box-shadow: none !important; }


.elementor-location-footer .elementor-element.elementor-element-403327b7 .elementor-icon-box-content { display: flex !important; flex-direction: column; }
.elementor-location-footer .elementor-element.elementor-element-403327b7 .elementor-icon-box-description { order: -1; font: 400 calc(13px * var(--t, 1))/calc(18px * var(--t, 1)) Inter, sans-serif !important; color: #C9DCEF !important; margin: 0 0 calc(8px * var(--s, 1)) !important; text-align: left !important; }


.elementor-element.elementor-element-6662167 { background: #F4F7FA !important; padding: calc(96px * var(--s, 1)) 0 calc(96px * var(--s, 1)) !important; gap: 0 !important; display: flex !important; flex-direction: column !important; }
.elementor-element.elementor-element-6662167 > .elementor-widget { width: 100% !important; max-width: none !important; margin: 0 !important; }
.elementor-element.elementor-element-6662167 .elementor-widget > .elementor-widget-container { margin: 0 !important; padding: 0 !important; }
.elementor-element.elementor-element-6662167 > .jp-w-title, .elementor-element.elementor-element-6662167 > .jp-w-lede { padding: 0 var(--jp-gutter) !important; }
.jp-w-title .elementor-heading-title { font: 600 calc(44px * var(--s, 1))/calc(52px * var(--s, 1)) Inter, sans-serif !important; letter-spacing: -0.01em !important; color: #004C97 !important; margin: 0 0 calc(16px * var(--s, 1)) !important; text-transform: none !important; }
.jp-w-lede, .jp-w-lede p { font: 400 calc(18px * var(--t, 1))/calc(28px * var(--t, 1)) Inter, sans-serif !important; color: #0F1E2E !important; }
.jp-w-lede .elementor-widget-container { max-width: calc(620px * var(--s, 1)); }
.jp-w-lede p { margin: 0 !important; }
.elementor-element.elementor-element-6662167 > .jp-w-lede { margin-bottom: calc(40px * var(--s, 1)) !important; }
.elementor-element.elementor-element-6662167 > .e-con.jp-w-cta { width: auto !important; max-width: none !important; margin: calc(64px * var(--s, 1)) var(--jp-gutter) 0 !important; padding: calc(40px * var(--s, 1)) calc(48px * var(--s, 1)) !important; background: #004C97 !important; display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; gap: calc(32px * var(--s, 1)) !important; min-height: 0 !important; }
.jp-w-cta > .e-con { padding: 0 !important; margin: 0 !important; gap: 0 !important; width: auto !important; flex: 1 1 auto; min-height: 0 !important; }
.jp-w-cta .elementor-widget { margin: 0 !important; }
.jp-w-cta .elementor-widget-container { margin: 0 !important; padding: 0 !important; }
.jp-w-cta .elementor-heading-title { font: 600 calc(28px * var(--s, 1))/calc(34px * var(--s, 1)) Inter, sans-serif !important; letter-spacing: -0.01em !important; color: #fff !important; margin: 0 0 calc(8px * var(--s, 1)) !important; text-transform: none !important; }
.jp-w-cta .elementor-widget-text-editor, .jp-w-cta .elementor-widget-text-editor p { font: 400 calc(16px * var(--t, 1))/calc(26px * var(--t, 1)) Inter, sans-serif !important; color: #C9DCEF !important; margin: 0 !important; max-width: calc(620px * var(--s, 1)); }
.jp-w-cta .elementor-widget-button { flex: 0 0 auto; width: auto !important; }
.jp-w-cta .elementor-button { display: inline-flex !important; align-items: center; justify-content: center; background: #5CB8B2 !important; color: #fff !important; font: 600 calc(15px * var(--t, 1))/calc(20px * var(--t, 1)) Inter, sans-serif !important; padding: calc(12px * var(--s, 1)) calc(22px * var(--s, 1)) !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; text-transform: none !important; letter-spacing: 0 !important; transition: background 150ms ease-out; }
.jp-w-cta .elementor-button:hover { background: #4CA8A2 !important; }
@media (max-width: 1360px) { .elementor-element.elementor-element-6662167 { padding: 96px 0 !important; } }
@media (max-width: 1180px) { .elementor-element.elementor-element-6662167 { padding: 80px 0 !important; } }
@media (max-width: 900px) {
	.elementor-element.elementor-element-6662167 { padding: 64px 0 !important; }
	.jp-w-title .elementor-heading-title { font-size: 34px !important; line-height: 40px !important; }
	.jp-w-lede, .jp-w-lede p { font-size: 16px !important; line-height: 26px !important; }
	.elementor-element.elementor-element-6662167 > .jp-w-lede { margin-bottom: 24px !important; }
	.elementor-element.elementor-element-6662167 > .e-con.jp-w-cta { flex-direction: column !important; align-items: flex-start !important; padding: 32px !important; margin-top: 48px !important; }
	.jp-w-cta .elementor-heading-title { font-size: 24px !important; line-height: 30px !important; }
}
@media (max-width: 600px) {
	.elementor-element.elementor-element-6662167 { padding: 56px 0 !important; }
	.elementor-element.elementor-element-6662167 > .e-con.jp-w-cta { padding: 32px 24px !important; margin-top: 40px !important; }
}


.elementor-location-header .elementor-element.elementor-element-53c5fd20 { align-self: center !important; display: flex !important; align-items: center !important; }
@media (max-width: 600px) {
	:root { --jp-hdr-n: 72; }
	body.jp-scrolled { --jp-hdr-n: 56; }
	.elementor-location-header .elementor-element.elementor-element-75a2547e { height: 72px !important; }
	body.jp-scrolled .elementor-location-header .elementor-element.elementor-element-75a2547e { height: 56px !important; }
	.elementor-location-header .elementor-element.elementor-element-53c5fd20 { height: auto !important; }
}
@media (max-width: 782px) { body.admin-bar { --jp-ab: 46px; } }
@media (max-width: 600px) { body.admin-bar { --jp-ab: 0px; } }

@media (min-width: 601px) and (max-width: 900px) {
	.elementor-location-footer .elementor-element.elementor-element-3608ee42 { order: 1; align-self: flex-start !important; }
	.elementor-location-footer .elementor-element.elementor-element-180cbf7d { order: 2; width: auto !important; flex: 0 0 auto !important; align-self: flex-start !important; }
	.elementor-location-footer .elementor-element.elementor-element-b0b08f8 { order: 3; flex: 0 0 100% !important; }
}

@media (max-width: 1024px) {
	.elementor-element-2b6aa219 .elementor-widget-text-editor a[href^="tel:"], .elementor-element-2b6aa219 .elementor-widget-text-editor a[href^="mailto:"] { display: inline-block; padding: 6px 0; }
}

@media (min-width: 901px) and (max-width: 1279px) {
	.elementor-location-footer .elementor-element.elementor-element-403327b7 { grid-auto-columns: max-content !important; column-gap: 48px !important; }
}
.elementor-location-footer .elementor-element.elementor-element-bb43274 a:hover { color: #fff !important; text-decoration: underline !important; text-underline-offset: 3px; }
body .elementor-element.elementor-element-646e319 { width: calc(780px * var(--s, 1)) !important; }
body .elementor-element.elementor-element-646e319 .elementor-heading-title { font-size: calc(78px * var(--s, 1)) !important; line-height: calc(82px * var(--s, 1)) !important; letter-spacing: -0.025em !important; }
@media (max-width: 900px) { body .elementor-element.elementor-element-646e319 .elementor-heading-title { font-size: 52px !important; line-height: 58px !important; } }
@media (max-width: 600px) { body .elementor-element.elementor-element-646e319 .elementor-heading-title { font-size: 44px !important; line-height: 50px !important; } }
