.elementor-kit-13{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-13 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --gl-color-brand:#075C59; --gl-color-brand-hover:#034542; --gl-color-text:#173431; --gl-color-muted:#526B67; --gl-color-background:#F5F8F6; --gl-color-surface:#FFFFFF; --gl-color-surface-subtle:#E9F1ED; --gl-color-border:#CCDAD4; --gl-color-focus:#006C83; --gl-color-success:#216747; --gl-color-warning:#8A5A14; --gl-color-danger:#A12D32; --gl-color-code-background:#102D2A; --gl-color-code-text:#E3F1E9; --gl-space-2xs:4px; --gl-space-xs:8px; --gl-space-sm:12px; --gl-space-md:16px; --gl-space-lg:24px; --gl-space-xl:32px; --gl-space-2xl:48px; --gl-space-3xl:72px; --gl-space-4xl:104px; --gl-radius-sm:4px; --gl-radius-md:8px; --gl-radius-lg:12px; --gl-font-sans:IBM Plex Sans; --gl-font-mono:IBM Plex Mono; }
/* Start custom CSS *//* GeoLedger: cross-cutting content, focus and legacy semantic primitives. Native v4 layout belongs to Global Classes. */
body { background: var(--gl-color-background); }
.elementor pre:focus-visible, .gl-legacy-table:focus-visible, .elementor a:focus-visible, .locicore-customer-portal a:focus-visible, .locicore-customer-portal button:focus-visible, .locicore-customer-portal input:focus-visible { outline: 3px solid var(--gl-color-focus); outline-offset: 3px; }
.elementor p { margin-block: 0; }
.elementor pre { margin: 0; max-width: 100%; overflow: auto; white-space: pre; font: inherit; background: transparent; color: inherit; }
.elementor code { font-family: var(--gl-font-mono), monospace; }
.gl-semantic-table { width: 100%; border-collapse: collapse; font-family: var(--gl-font-sans), sans-serif; font-size: 16px; line-height: 1.5; color: var(--gl-color-text); background: var(--gl-color-surface); }
.gl-semantic-table caption { text-align: left; padding: var(--gl-space-md); font-weight: 500; }
.gl-semantic-table th, .gl-semantic-table td { padding: var(--gl-space-md); text-align: left; vertical-align: top; border-bottom: 1px solid var(--gl-color-border); }
.gl-semantic-table th { background: var(--gl-color-surface-subtle); font-weight: 500; }
.gl-semantic-table td code { overflow-wrap: anywhere; }
.gl-mark { display: inline-block; width: 18px; height: 18px; border: 2px solid currentColor; margin-right: var(--gl-space-xs); vertical-align: -1px; }
.gl-mark::after { content: ""; display: block; width: 6px; height: 6px; background: currentColor; margin: 4px; }
.gl-skip-link { position: fixed; inset-inline-start: 16px; top: -1000px; z-index: 1000; width: auto; white-space: nowrap; font-family: var(--gl-font-sans); font-size: 16px; background: var(--gl-color-surface); padding: var(--gl-space-sm); color: var(--gl-color-brand); }
.gl-skip-link:focus { top: 8px; }
.gl-legacy-code { font-family: var(--gl-font-mono), monospace; font-size: 14px; line-height: 1.7; background: var(--gl-color-code-background); color: var(--gl-color-code-text); border-radius: var(--gl-radius-md); padding: var(--gl-space-lg); max-width: 100%; min-width: 0; overflow: auto; }
.gl-legacy-table { max-width: 100%; min-width: 0; overflow: auto; border: 1px solid var(--gl-color-border); border-radius: var(--gl-radius-sm); }
.rank-math-breadcrumb p { font-family: var(--gl-font-sans), sans-serif; font-size: 14px; color: var(--gl-color-muted); line-height: 1.5; }
.rank-math-breadcrumb a { color: var(--gl-color-brand); }
.elementor-widget-theme-post-content { min-width: 0; }
.elementor-widget-theme-post-content .locicore-customer-portal { font-family: var(--gl-font-sans), sans-serif; color: var(--gl-color-text); font-size: 17px; line-height: 1.6; }
.elementor-widget-theme-post-content .locicore-customer-portal input { max-width: 100%; }
.elementor-widget-theme-post-content .locicore-customer-portal table { display: block; max-width: 100%; overflow: auto; }
@media (max-width: 767px) { .gl-semantic-table th, .gl-semantic-table td { padding: var(--gl-space-sm); } }

/* The skip link must not occupy space in the header's flex layout. */
.elementor-element-gl-skip { position: absolute; width: 0; }

.gl-toc .gl-heading-3 { grid-column: 1 / -1; }

/* Append to the existing Elementor kit; keep its tokens, fonts and global classes. */
:root { --gl-color-brand: #075c59; --gl-color-brand-hover: #034542; --gl-color-text: #173431; --gl-color-muted: #526b67; --gl-color-background: #f5f8f6; --gl-color-surface: #fff; --gl-color-surface-subtle: #e9f1ed; --gl-color-border: #ccdad4; --gl-color-focus: #006c83; }
#gl-main [id^=glux-] { min-width: 0; }
#glux-home, #glux-pricing, #glux-woocommerce { color: var(--gl-color-text); font-family: var(--gl-font-sans, system-ui), sans-serif; font-size: 1.0625rem; line-height: 1.65; }
#glux-home *, #glux-pricing *, #glux-woocommerce * { box-sizing: border-box; }
:is(#glux-home, #glux-pricing, #glux-woocommerce) :is(h1,h2,h3) { font-weight: 500; letter-spacing: -.035em; line-height: 1.13; margin: 0 0 1rem; }
:is(#glux-home, #glux-pricing, #glux-woocommerce) h1 { font-size: clamp(2.25rem, 4.8vw, 4.25rem); }
:is(#glux-home, #glux-pricing, #glux-woocommerce) h2 { font-size: clamp(1.75rem, 3.5vw, 2.65rem); }
:is(#glux-home, #glux-pricing, #glux-woocommerce) h3 { font-size: 1.35rem; }
:is(#glux-home, #glux-pricing, #glux-woocommerce) p { margin: 0 0 1.25rem; max-width: 70ch; }
:is(#glux-home, #glux-pricing, #glux-woocommerce) a:not(:is(.g-a29238c,.gl-button-primary)):not(:is(.g-c4b65dc,.gl-button-secondary)) { color: var(--gl-color-brand); text-underline-offset: .2em; }
#glux-home > section, #glux-pricing > section, #glux-woocommerce > section { padding-block: clamp(2.5rem, 6vw, 5rem); border-bottom: 1px solid var(--gl-color-border); }
#glux-home, #glux-pricing, #glux-woocommerce { width: min(1200px, calc(100% - 48px)); margin-inline: auto; padding-bottom: 3rem; }
#glux-pricing, #glux-woocommerce { padding-top: clamp(2.5rem, 6vw, 5rem); }
#glux-hero { display: grid; grid-template-columns: 1.2fr .9fr; align-items: center; gap: clamp(2rem, 5vw, 5rem); padding-block: clamp(3rem, 7vw, 6rem); }
#glux-home-intro, #glux-pricing-intro, #glux-woocommerce-intro { font-size: 1.2rem; color: var(--gl-color-muted); }
:is(.elementor-element-glux-badge,.elementor-element-glux-pricing-badge,.elementor-element-glux-woocommerce-badge,[data-id="glux-badge"],[data-id="glux-pricing-badge"],[data-id="glux-woocommerce-badge"]) { display: inline-block; width: fit-content; background: #e9f1ed; color: #075c59; border: 1px solid #ccdad4; border-radius: 100px; padding: .4rem .85rem; font-size: .875rem; font-weight: 600; letter-spacing: 0; margin-bottom: 1.5rem !important; }
:is(#glux-home-actions,#glux-price-actions,#glux-woocommerce-actions,#glux-product-actions,#glux-footer-links) { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; }
:is(#glux-home,#glux-pricing,#glux-woocommerce,#glux-header-inner,#glux-footer-links,#glux-product-actions) :is(.g-a29238c,.gl-button-primary),
:is(#glux-home,#glux-pricing,#glux-woocommerce,#glux-header-inner,#glux-footer-links,#glux-product-actions) :is(.g-c4b65dc,.gl-button-secondary) { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: .75rem 1.1rem; border: 1px solid #075c59; border-radius: 6px; background: #075c59; color: #fff; text-decoration: none; font: 600 1rem/1.4 var(--gl-font-sans, system-ui), sans-serif; text-align: center; }
:is(#glux-home,#glux-pricing,#glux-woocommerce,#glux-header-inner,#glux-footer-links,#glux-product-actions) :is(.g-c4b65dc,.gl-button-secondary) { background: #fff; color: #075c59; }
:is(#glux-home,#glux-pricing,#glux-woocommerce,#glux-header-inner,#glux-footer-links,#glux-product-actions) :is(.g-a29238c,.gl-button-primary):hover { background: #034542; }
:is(#glux-home,#glux-pricing,#glux-woocommerce,#glux-header-inner,#glux-footer-links,#glux-product-actions) :is(.g-c4b65dc,.gl-button-secondary):hover { background: #e9f1ed; }
:is(.elementor-element-glux-hero-note,[data-id="glux-hero-note"]) { font-size: .875rem; color: #526b67; margin-top: 1rem !important; }
.glux-address { margin: 0; padding: clamp(1rem, 3vw, 2rem); border: 1px solid #ccdad4; background: #fff; border-radius: 16px; }
.glux-address-top { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .5rem; padding-bottom: 2rem; font-weight: 600; }
.glux-pill { font-size: .8rem; padding: .2rem .65rem; background: #e9f1ed; border-radius: 20px; }
.glux-input-row { display: grid; grid-template-columns: 1.2fr 1fr .8fr; gap: .5rem; }
.glux-input-row div { min-width: 0; }
.glux-input-row span { display: block; font-size: .75rem; color: #526b67; margin-bottom: .4rem; }
.glux-input-row strong { display: block; padding: .6rem; border: 1px solid #ccdad4; border-radius: 6px; font-size: 1rem; white-space: nowrap; }
.glux-address-arrow { color: #075c59; font-size: 2rem; line-height: 1; padding: 1rem; text-align: center; }
.glux-address-result { background: #e9f1ed; border-radius: 8px; padding: 1.25rem; }
.glux-address-result :is(span,strong) { display: block; }
.glux-address-result span { font-size: .8rem; margin-bottom: .75rem; }
.glux-address-result strong { font-size: 1.15rem; font-weight: 500; }
.glux-address figcaption { font-size: .75rem; color: #526b67; padding-top: 1rem; }
.glux-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.5rem; list-style: none; padding: 0; margin: 2rem 0 0; }
.glux-steps li > span { display: inline-flex; width: 48px; height: 48px; align-items: center; justify-content: center; color: #075c59; background: #e9f1ed; border-radius: 50%; margin-bottom: 1.25rem; font-weight: 600; }
#glux-integration-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; padding-top: 1rem; }
#glux-woo-card, #glux-api-card { border: 1px solid #ccdad4; border-radius: 12px; padding: 2rem; background: #fff; }
.elementor-element-glux-woo-eyebrow, .elementor-element-glux-api-eyebrow { color: #526b67; font-size: .875rem; }
.glux-benefits { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.5rem; padding-top: 1rem; }
#glux-early-access { border: 1px solid #ccdad4; border-radius: 12px; background: #e9f1ed; padding: clamp(1.5rem, 4vw, 3rem) !important; margin-top: 3rem; }
#glux-price-card { border: 1px solid #ccdad4; background: #fff; border-radius: 12px; padding: clamp(1.5rem, 4vw, 3rem) !important; max-width: 760px; margin-top: 2.5rem; }
#glux-price-card ul { padding-left: 1.25rem; margin-bottom: 2rem; }
#glux-price-card li { padding-block: .3rem; }
.elementor-element-glux-pricing-limits { margin-top: 1.5rem !important; color: #526b67; }
#glux-faq details { border-bottom: 1px solid #ccdad4; padding-block: .25rem; }
#glux-faq summary { cursor: pointer; min-height: 56px; padding-block: 1rem; font-weight: 600; }
#glux-faq details p { padding-bottom: 1rem; }
.glux-link-list { padding-left: 1.25rem; }
.glux-link-list li { padding-block: .4rem; }
.glux-install-list { padding-left: 1.5rem; }
.glux-install-list li { padding-left: .5rem; margin-top: 2rem; }
#glux-header-inner { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1rem; }
#glux-header-inner .elementor-element-gl-wordmark { flex-shrink: 0; }
#glux-header-inner .gl-brand-link { display: inline-flex; align-items: center; background: #fff; }
#glux-header-inner .gl-brand-logo { display: block; width: 200px; height: auto; aspect-ratio: 225 / 57; max-width: 100%; }
#glux-header-inner .elementor-element-gl-nav { flex: 1 1 auto; }
#glux-header-inner .elementor-element-glux-header-register { flex: 0 1 auto; }
#glux-header-inner nav a, .glux-nav a { font-size: 1rem; }
#gl-main :is(a,button,input,summary):focus-visible, #glux-header-inner :is(a,button):focus-visible { outline: 3px solid #006c83; outline-offset: 3px; }
/* Preview shell substitutes the existing native Elementor global class styles only locally. */
.glux-preview { margin: 0; background: #f5f8f6; color: #173431; font: 400 1.0625rem/1.65 system-ui, sans-serif; }
.glux-preview * { box-sizing: border-box; }
.glux-preview a { color: #075c59; text-underline-offset: .2em; }
.glux-preview h1, .glux-preview h2, .glux-preview h3 { line-height: 1.15; font-weight: 500; letter-spacing: -.025em; }
.glux-preview h1 { font-size: clamp(2rem, 5vw, 4rem); }
.glux-preview h2 { font-size: clamp(1.5rem, 3vw, 2.25rem); }
.glux-preview h3 { font-size: 1.3rem; }
.glux-preview > .elementor-element-glt0002 { background: #fff; border-bottom: 1px solid #ccdad4; padding: 1.25rem 24px; }
.glux-preview #glux-header-inner { max-width: 1200px; margin: auto; }
.glux-preview .elementor-element-gl-wordmark { font-size: 1.6rem; font-weight: 600; text-decoration: none; }
.glux-preview .glux-nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .4rem 1.2rem; }
.glux-preview .glux-nav a { text-decoration: none; padding-block: .5rem; }
.glux-preview > .elementor-element-glt000f { border-top: 1px solid #ccdad4; padding: 3rem 24px; }
.glux-preview .elementor-element-glt000e { max-width: 1200px; margin: auto; }
.glux-preview .elementor-element-glt000b, .glux-preview .elementor-element-gl-legal-links { display: flex; flex-wrap: wrap; gap: 1.5rem; margin-block: 1.5rem; }
.glux-preview .gl-skip-link { position: absolute; top: -1000px; left: 12px; padding: 1rem; background: #fff; z-index: 10; }
.glux-preview .gl-skip-link:focus { top: 12px; }
.glux-preview #gl-main:not(:has(#glux-home,#glux-pricing,#glux-woocommerce)), .glux-preview .elementor-element-glt0016 { max-width: 1200px; width: calc(100% - 48px); margin: auto; padding-block: 3rem; }
.glux-preview pre { overflow: auto; max-width: 100%; padding: 1.5rem; background: #102d2a; color: #e3f1e9; border-radius: 8px; }
.glux-preview code { overflow-wrap: anywhere; }
.glux-preview .gl-legacy-table { overflow: auto; max-width: 100%; }
.glux-preview .gl-semantic-table { border-collapse: collapse; width: 100%; }
.glux-preview .gl-semantic-table :is(th,td) { text-align: left; padding: .75rem; border-bottom: 1px solid #ccdad4; }
@media (max-width: 1024px) {
  #glux-hero { grid-template-columns: 1fr; }
  #glux-address-visual { max-width: 600px; }
  #glux-header-inner .elementor-element-gl-nav { order: 3; flex-basis: 100%; }
  .glux-preview .glux-nav { justify-content: flex-start; }
}
@media (max-width: 767px) {
  #glux-home, #glux-pricing, #glux-woocommerce { width: calc(100% - 32px); }
  .glux-steps, .glux-benefits, #glux-integration-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  #glux-woo-card, #glux-api-card { padding: 1.5rem; }
  #glux-home-actions, #glux-price-actions, #glux-woocommerce-actions { align-items: stretch; flex-direction: column; }
  #glux-header-inner .elementor-element-glux-header-register { font-size: .875rem; padding: .65rem .8rem; }
  .glux-preview .elementor-element-gl-wordmark { font-size: 1.3rem; }
  #glux-header-inner .gl-brand-logo { width: 128px; }
}

.elementor-element-gl-skip { position: absolute; width: 0; }
.glux-preview .elementor-element-eaf0078 { display: flex; flex-wrap: wrap; gap: 1.5rem; }

/* Native atomic widgets emit class labels and data-id; retain preview aliases. */
body.logged-in :is(.elementor-element-glux-header-register,[data-id="glux-header-register"]) { display: none !important; }
:is(.elementor-element-gl00038,[data-id="gl00038"],.elementor-element-gl00047,[data-id="gl00047"]) { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('https://geoledger.eu/wp-content/uploads/2026/09/geoledger-ibm-plex-sans-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('https://geoledger.eu/wp-content/uploads/2026/09/geoledger-ibm-plex-sans-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('https://geoledger.eu/wp-content/uploads/2026/09/geoledger-ibm-plex-sans-latin.woff2') format('woff2');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'IBM Plex Mono';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('https://geoledger.eu/wp-content/uploads/2026/09/geoledger-ibm-plex-mono-latin.woff2') format('woff2');
}
/* End Custom Fonts CSS */