.elementor-kit-10{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-bba7e64b:#08080A;--e-global-color-99385180:#F7F6F2;--e-global-color-1f7a4187:#FFFFFF;--e-global-color-05111505:#0E0E0E;--e-global-color-4a8b195e:#63636A;--e-global-color-8e43ef1f:#2197EB;--e-global-color-d77f6b0a:#8A2FA8;--e-global-color-0b320292:#BC006F;--e-global-color-f68dc53d:#D9D8D4;--e-global-color-a4daaf1f:#B1B0AE;--e-global-color-0ab7f4b6:#2B2B2C;--e-global-color-1aaf3579:#B0B0B1;--e-global-color-cb58dd47:#9C9C9D;--e-global-color-a7237b1c:#5C5C5D;--e-global-color-2527b8f5:#848484;--e-global-color-113eacab:#E9E8E4;--e-global-color-4b81b954:#BFBEBB;--e-global-typography-primary-font-family:"Sora";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Sora";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Sora";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Sora";--e-global-typography-accent-font-weight:500;--e-global-typography-bcdc87de-font-family:"Sora";--e-global-typography-bcdc87de-font-size:clamp(38px,6.4vw,104px);--e-global-typography-bcdc87de-font-weight:300;--e-global-typography-bcdc87de-line-height:0.94em;--e-global-typography-bcdc87de-letter-spacing:-0.052em;--e-global-typography-a475e5ae-font-family:"Sora";--e-global-typography-a475e5ae-font-size:clamp(34px,4.4vw,62px);--e-global-typography-a475e5ae-font-weight:300;--e-global-typography-a475e5ae-line-height:1.02em;--e-global-typography-a475e5ae-letter-spacing:-0.042em;--e-global-typography-a1c8fe5c-font-family:"Sora";--e-global-typography-a1c8fe5c-font-size:clamp(30px,3.8vw,52px);--e-global-typography-a1c8fe5c-font-weight:300;--e-global-typography-a1c8fe5c-line-height:1.08em;--e-global-typography-a1c8fe5c-letter-spacing:-0.038em;--e-global-typography-56e488f9-font-family:"Sora";--e-global-typography-56e488f9-font-size:clamp(22px,2.4vw,32px);--e-global-typography-56e488f9-font-weight:400;--e-global-typography-56e488f9-line-height:1.15em;--e-global-typography-56e488f9-letter-spacing:-0.028em;--e-global-typography-2d53c276-font-family:"Sora";--e-global-typography-2d53c276-font-size:20px;--e-global-typography-2d53c276-font-weight:500;--e-global-typography-2d53c276-line-height:1.3em;--e-global-typography-2d53c276-letter-spacing:-0.02em;--e-global-typography-12ba2fec-font-family:"Sora";--e-global-typography-12ba2fec-font-size:clamp(21px,2.2vw,28px);--e-global-typography-12ba2fec-font-weight:300;--e-global-typography-12ba2fec-line-height:1.42em;--e-global-typography-12ba2fec-letter-spacing:-0.02em;--e-global-typography-690acda3-font-family:"Sora";--e-global-typography-690acda3-font-size:17px;--e-global-typography-690acda3-font-weight:300;--e-global-typography-690acda3-line-height:1.66em;--e-global-typography-690acda3-letter-spacing:0px;--e-global-typography-8abde18a-font-family:"Sora";--e-global-typography-8abde18a-font-size:14.5px;--e-global-typography-8abde18a-font-weight:300;--e-global-typography-8abde18a-line-height:1.6em;--e-global-typography-8abde18a-letter-spacing:0px;--e-global-typography-4838793f-font-family:"Sora";--e-global-typography-4838793f-font-size:12px;--e-global-typography-4838793f-font-weight:600;--e-global-typography-4838793f-text-transform:uppercase;--e-global-typography-4838793f-line-height:1.4em;--e-global-typography-4838793f-letter-spacing:1.9px;--e-global-typography-e830ce20-font-family:"Sora";--e-global-typography-e830ce20-font-size:13px;--e-global-typography-e830ce20-font-weight:600;--e-global-typography-e830ce20-text-transform:uppercase;--e-global-typography-e830ce20-line-height:1.2em;--e-global-typography-e830ce20-letter-spacing:0.78px;}.elementor-kit-10 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1600px;}.e-con{--container-max-width:1600px;}.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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@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;}}
/* Start custom CSS *//* ==========================================================================
   LeadGenie brand text system — site-wide, reusable on every page
   --------------------------------------------------------------------------
   HOW TO USE
   1. Inline accent inside any Heading / Text Editor / Button:
        One assistant. <span class="lg-grad">Every channel</span> they use.
   2. Whole-widget gradient (stat numbers, counters, labels):
        Elementor → Advanced → CSS Classes →  lg-grad-el
   3. Gradient rule / divider bar on a Container:
        Elementor → Advanced → CSS Classes →  lg-grad-bar
   4. Bold accent (no gradient):
        <span class="lg-b">without you touching it.</span>
   ========================================================================== */
:root{
  --lg-grad:linear-gradient(100deg,#2197EB 0%,#8A2FA8 52%,#BC006F 100%);
  --lg-blue:#2197EB;
  --lg-purple:#8A2FA8;
  --lg-magenta:#BC006F;
  --lg-ink:#08080A;
  --lg-paper:#F7F6F2;
}

/* 1 — inline gradient accent span */
.lg-grad{
  background-image:var(--lg-grad);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  font-weight:600;
}
.lg-grad--light{font-weight:500}
.lg-grad sup{font-size:.46em;font-weight:700;position:relative;top:-.85em;margin-left:3px}

/* 2 — inline bold accent, inherits colour */
.lg-b{font-weight:600;color:inherit}

/* 3 — whole-widget gradient text */
.lg-grad-el .elementor-heading-title,
.lg-grad-el .elementor-counter-number,
.lg-grad-el .elementor-widget-container > p,
.lg-grad-el p{
  background-image:var(--lg-grad);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent!important;
  -webkit-text-fill-color:transparent;
}

/* 4 — gradient rule / bar (containers, dividers) */
.lg-grad-bar,
.lg-grad-bar.e-con,
.lg-grad-bar.e-con-inner{background-image:var(--lg-grad)!important}

/* 5 — gradient top-edge on a container (hero base, dark break, CTA) */
.lg-grad-top{position:relative}
.lg-grad-top::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background-image:var(--lg-grad);z-index:2;
}
.lg-grad-bottom{position:relative}
.lg-grad-bottom::after{
  content:"";position:absolute;bottom:0;left:0;right:0;height:2px;
  background-image:var(--lg-grad);z-index:2;
}

/* 6 — nav mega-menu chips: <span class="lg-chip">Voice</span> */
.lg-chip{
  display:inline-block;vertical-align:middle;margin-left:8px;
  font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;
  border:1px solid rgba(255,255,255,.14);padding:3px 7px;border-radius:2px;
  color:rgba(255,255,255,.5);white-space:nowrap;
}
.lg-chip--free{border-color:transparent;background-image:var(--lg-grad);color:#fff}
.lg-chip--new{border-color:rgba(188,0,111,.6);color:#fff;background:rgba(188,0,111,.22)}

/* 7 — mega panel link rows */
.lg-mlink{transition:padding-left .25s ease}
.lg-mlink:hover{padding-left:9px!important}
.lg-mlink:hover .elementor-heading-title{color:#fff!important}

/* 8 — industry / card hover invert */
.lg-card-invert{transition:background .34s ease,color .34s ease}
.lg-card-invert:hover{background-color:var(--lg-ink)!important}
.lg-card-invert:hover .elementor-heading-title{color:#fff!important}
.lg-card-invert:hover p{color:rgba(255,255,255,.62)!important}

/* 9 — logo sizing (matches source: fixed height, auto width) */
.lg-logo img{height:58px;width:auto;max-width:none}
.lg-logo-footer img{height:76px;width:auto;max-width:none}
.lg-wordmark{opacity:.09;overflow:hidden}
.lg-wordmark img{width:100%}
@media(max-width:820px){.lg-logo img{height:46px}}

/* 10 — gradient superscript, e.g. Payments<sup class="lg-sup">*</sup> */
.lg-sup{
  font-size:.46em;font-weight:700;position:relative;top:-.85em;margin-left:3px;
  background-image:var(--lg-grad);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}

/* 11 — live status dot: <span class="lg-dot"></span> */
.lg-dot{
  display:inline-block;width:6px;height:6px;border-radius:50%;
  background:#22C55E;box-shadow:0 0 0 4px rgba(34,197,94,.18);
  margin-right:10px;vertical-align:middle;
  animation:lg-pulse 2.2s infinite;
}
@keyframes lg-pulse{0%,100%{opacity:1}50%{opacity:.35}}
@media(prefers-reduced-motion:reduce){.lg-dot{animation:none}}

/* 12 — progress ring for the platform index rows
   Container class: lg-ring  +  a fill modifier lg-ring--20 … --100 */
@property --lg-p{syntax:'<number>';initial-value:0;inherits:true}
.lg-ring{
  position:relative;width:64px;height:64px;flex:none;
  display:flex!important;align-items:center;justify-content:center;
  --lg-p:0;transition:--lg-p .9s cubic-bezier(.16,.9,.24,1);
}
.lg-ring::before{
  content:"";position:absolute;inset:0;border-radius:50%;
  background:conic-gradient(from -90deg,
    #2197EB 0deg,
    #8A2FA8 calc(var(--lg-p) * 1.87deg),
    #BC006F calc(var(--lg-p) * 3.6deg),
    rgba(14,14,14,.13) calc(var(--lg-p) * 3.6deg) 360deg);
  -webkit-mask:radial-gradient(circle at 50% 50%,#0000 0 28px,#000 28.6px);
          mask:radial-gradient(circle at 50% 50%,#0000 0 28px,#000 28.6px);
}
.lg-ring > *{position:relative;z-index:1}
.lg-ring--20{--lg-p:20}.lg-ring--40{--lg-p:40}.lg-ring--60{--lg-p:60}
.lg-ring--80{--lg-p:80}.lg-ring--100{--lg-p:100}
.lg-rx-row:hover .lg-ring{--lg-p:100}
.lg-rx-row{transition:padding-left .32s ease,background-color .32s ease}
.lg-rx-row:hover{padding-left:22px!important;background-color:#FFFFFF!important}
@media(max-width:820px){
  .lg-ring{width:48px;height:48px}
  .lg-ring::before{
    -webkit-mask:radial-gradient(circle at 50% 50%,#0000 0 20px,#000 20.6px);
            mask:radial-gradient(circle at 50% 50%,#0000 0 20px,#000 20.6px);}
}

/* 13 — fixed section progress rail. Shows at ≥1920px: content is 1600px (kit container_width, 30/09/2026), so the 120px rail at left:24px only clears the content from 1920 up. Was 1560px at the old 1300px width. */
.lg-rail{
  position:fixed!important;left:24px;top:50%;transform:translateY(-50%);
  z-index:60;display:none!important;
}
@media(min-width:1920px){.lg-rail{display:flex!important}}
.lg-rail-item{
  display:flex!important;flex-direction:row!important;align-items:center;gap:11px;
}
.lg-rail-item::before{
  content:"";flex:none;width:16px;height:1px;background:rgba(14,14,14,.2);
  transition:width .35s ease,height .35s ease,background .35s ease;
}
.lg-rail-item .elementor-heading-title{
  font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:600;
  color:rgba(14,14,14,.26);transition:color .3s;
}
.lg-rail-item:hover .elementor-heading-title{color:rgba(14,14,14,.55)!important}
.lg-rail-item.lg-on .elementor-heading-title{color:#0E0E0E!important}
.lg-rail-item.lg-on::before{width:34px;height:2px;background:var(--lg-grad)}

/* 14 — inline pill (hero live badge): shrink-wrap instead of stretching */
.lg-pill{width:fit-content!important;max-width:100%;flex:none}

/* 15 — left-align a Counter widget (its number block centres by default) */
.lg-num-left .elementor-counter-number-wrapper,
.elementor-widget-counter.lg-num-left .elementor-counter-number-wrapper{
  text-align:left!important;justify-content:flex-start!important;
}

/* 16 — flex helpers for row layouts
   lg-pill  : shrink to content, never grow  (logo, nav actions, badges)
   lg-grow  : take the remaining space       (middle/《1fr》columns) */
.lg-grow{flex:1 1 0%!important;width:auto!important;min-width:0}
.lg-shrink{flex:0 0 auto!important;width:auto!important}
.lg-shrink-desktop{flex:0 0 auto}
@media(max-width:820px){.lg-shrink-desktop{flex:1 1 100%}}

/* 17 — sticky header via CSS (matches source `nav{position:sticky;top:0}`).
   Elementor's JS sticky writes an inline width and mis-measures full-width
   containers, so we do not use it here. */
.lg-sticky{
  position:sticky!important;top:0;z-index:400;
  width:100%!important;
}

/* 18 — pull quote measure (source: .pull blockquote{max-width:20ch;margin:0 auto})
   20ch breaks it as designed: "Reply first. Win the job." / "Everything else is detail." */
.lg-pull .elementor-heading-title{
  max-width:20ch;margin-left:auto;margin-right:auto;
}

/* 19 — measure scale, mirroring the source's `max-width:<n>ch` rules.
   Apply to a Heading or Text Editor widget via CSS Classes.
   Source values: h1 16 · section h2 19 · dark-break/CTA h2 14 · hero sub 52
   · section p 60 · CTA p 48 · metric foot 34 · fine print 80 · pull quote 20 */
.lg-mw-14 .elementor-heading-title,.lg-mw-14 p{max-width:14ch}
.lg-mw-16 .elementor-heading-title,.lg-mw-16 p{max-width:16ch}
.lg-mw-19 .elementor-heading-title,.lg-mw-19 p{max-width:19ch}
.lg-mw-34 .elementor-heading-title,.lg-mw-34 p{max-width:34ch}
.lg-mw-48 .elementor-heading-title,.lg-mw-48 p{max-width:48ch}
.lg-mw-52 .elementor-heading-title,.lg-mw-52 p{max-width:52ch}
.lg-mw-60 .elementor-heading-title,.lg-mw-60 p{max-width:60ch}
.lg-mw-80 .elementor-heading-title,.lg-mw-80 p{max-width:80ch}

/* 20 — section eyebrow column: fixed 120px as in `.sec-top{120px 1fr}` */
.lg-eyebrow{flex:0 0 120px!important;width:120px!important}
@media(max-width:820px){.lg-eyebrow{flex:1 1 100%!important;width:100%!important}}


/* ==========================================================================
   FEATURE template components (rules 21–26)
   Added with /ai-receptionist. Reused by every page built from "LG — FEATURE":
   /conversational-ai /inbox /web-chat /missed-call-text-back /crm /booking
   /reviews /sms /automations /payments …
   ========================================================================== */
:root{
  --lg-rule:rgba(14,14,14,.13);
  --lg-rule-d:rgba(255,255,255,.14);
}

/* 21 — .anat transcript turn: gradient left edge on hover, plus the
   tablet/mobile reflow that moves the "what's happening" column below. */
.lg-turn{position:relative;transition:padding-left .3s ease}
.lg-turn::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:0;
  background-image:var(--lg-grad);transition:width .3s ease;
}
.lg-turn:hover::before{width:3px}
.lg-turn:hover{padding-left:20px!important}
@media(max-width:1024px){
  .lg-turn-work{
    flex:1 1 100%!important;width:100%!important;margin-left:120px!important;
    margin-top:18px!important;padding-left:0!important;padding-top:20px!important;
    border-left:none!important;border-top:1px solid var(--lg-rule)!important;
  }
}
@media(max-width:767px){
  .lg-turn:hover{padding-left:0!important}
  .lg-turn-work{margin-left:0!important}
}

/* 22 — hover-reveal "View →" label on the invert cards (.gx .go) */
.lg-go{opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .3s ease}
.lg-card-invert:hover .lg-go{opacity:1;transform:none}
.lg-card-invert:hover .lg-go .elementor-heading-title{
  background-image:var(--lg-grad);
  -webkit-background-clip:text;background-clip:text;
  color:transparent!important;-webkit-text-fill-color:transparent;
}
/* touch devices have no hover — never hide the label there */
@media(hover:none){.lg-go{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.lg-go{transition:none}}

/* 23 — underlined text buttons (.btn-line-d / .btn-line-l) */
.lg-btn-line .elementor-button{background-color:transparent!important}

/* 24 — .dial: the demo phone number in the dark break */
.lg-dial .elementor-button{
  padding:0!important;background-color:transparent!important;
  border:none!important;border-radius:0!important;
  border-bottom:1px solid rgba(255,255,255,.2)!important;
  transition:border-color .3s ease;
}
.lg-dial .elementor-button:hover{border-bottom-color:var(--lg-magenta)!important}

/* 25 — tabular numerals so the cost-ledger columns line up */
.lg-tnum .elementor-heading-title{font-variant-numeric:tabular-nums}

/* 26 — .spec sheet: value column is right-aligned on desktop, left on mobile */
@media(max-width:767px){
  .lg-spec-v .elementor-heading-title{text-align:left!important}
}

/* 27 — inline link inside body / fine-print copy (source: .fine a, .tlink) */
.tlink{color:var(--lg-ink);border-bottom:1px solid var(--lg-rule);transition:border-color .25s ease}
.tlink:hover{border-bottom-color:var(--lg-ink)}
.elementor-widget-text-editor a:not(.tlink){color:inherit;border-bottom:1px solid var(--lg-rule)}

/* 28 — FAQ accordion, styled to the source's <details> list */
.lg-faq .elementor-accordion .elementor-accordion-item{
  border:none;border-bottom:1px solid var(--lg-rule);
}
.lg-faq .elementor-tab-title{padding:28px 0!important;transition:padding-left .25s ease}
.lg-faq .elementor-tab-title:hover{padding-left:9px!important}
.lg-faq .elementor-tab-content{padding:0 0 30px 0!important;max-width:82ch}
.lg-faq .elementor-active .elementor-tab-title{font-weight:500}
.lg-faq .elementor-accordion-icon{width:auto}
@media(max-width:767px){
  .lg-faq .elementor-tab-title:hover{padding-left:0!important}
}


/* 29 — baseline alignment for icon+text rows. Elementor's container
   align-items control offers only flex-start/center/flex-end/stretch. */
.lg-baseline{align-items:baseline!important}

/* 30 — stripped nav sticky bar. Elementor's JS sticky mis-measures a
   full-width container and writes width:0 onto it (see standards 7-E). */
.lg-sticky-nav{position:sticky;top:0;z-index:100}

/* 31 — .bkg booking panel: translucent white plate on ink */
.lg-bkg{background:rgba(255,255,255,.045)}

/* 32 — booking form fields on the dark panel. Placeholder colour, the
   custom select arrow and option background have no native control. */
.lg-bform .elementor-field-group input,
.lg-bform .elementor-field-group select{
  background:rgba(255,255,255,.06)!important;
  padding:15px 16px!important;
  -webkit-appearance:none;appearance:none;
}
.lg-bform .elementor-field-group input::placeholder{color:rgba(255,255,255,.3)}
.lg-bform .elementor-field-group input:focus,
.lg-bform .elementor-field-group select:focus{
  background:rgba(255,255,255,.1)!important;
  border-color:rgba(255,255,255,.45)!important;
}
.lg-bform .elementor-field-group select{
  background-image:linear-gradient(45deg,transparent 50%,rgba(255,255,255,.5) 50%),
                   linear-gradient(135deg,rgba(255,255,255,.5) 50%,transparent 50%);
  background-position:calc(100% - 20px) 22px,calc(100% - 14px) 22px;
  background-size:6px 6px,6px 6px;background-repeat:no-repeat;cursor:pointer;
}
.lg-bform .elementor-field-group select option{background:#08080A;color:#fff}
.lg-bform .elementor-button{width:100%;padding:20px 30px!important}
.lg-bform .elementor-field-label{margin-bottom:9px}


/* 33 - .cfm confirmation chip dot (/demo/confirmed/). NOTE: .lg-dot is
   already taken by rule 11 (green pulsing live-status dot) - do not reuse it. */
.lg-cfm-dot{
  width:9px;height:9px;border-radius:50%;flex-shrink:0;
  background:var(--lg-grad);
}


/* ==== 34-37 : DOC template family (contact / privacy / terms / security /
   ai-disclosure). Content measure is 1160px, not 1300. ==== */

/* 34 - sticky "on this page" sidebar (source .lside{position:sticky;top:122px}) */
.lg-doc-side{position:sticky;top:122px;align-self:flex-start}
@media(max-width:1024px){.lg-doc-side{position:static;align-self:auto}}

/* 35 - sidebar nav links: left hairline that lifts on hover */
.lg-navx .elementor-widget-heading{border-left:1px solid var(--lg-rule);transition:border-color .2s}
.lg-navx .elementor-widget-heading .elementor-heading-title{
  padding:11px 0 11px 14px;display:block;transition:color .2s;
}
.lg-navx .elementor-widget-heading:hover{border-left-color:rgba(14,14,14,.4)}
.lg-navx .elementor-widget-heading:hover .elementor-heading-title{color:#0E0E0E!important}
@media(max-width:1024px){
  .lg-navx{flex-direction:row!important;flex-wrap:wrap!important}
  .lg-navx .elementor-widget-heading{border-left:none}
  .lg-navx .elementor-widget-heading .elementor-heading-title{padding:8px 16px 8px 0;font-size:13.5px}
}

/* 36 - "something else" routing cards: gradient left edge on hover */
.lg-doc-go{position:relative;transition:padding-left .26s ease}
.lg-doc-go::before{content:'';position:absolute;left:0;top:0;bottom:0;width:0;
  background:var(--lg-grad);transition:width .26s ease}
.lg-doc-go:hover::before{width:2px}
.lg-doc-go:hover{padding-left:14px!important}

/* 37 - contact form on paper (light panel variant of .lg-bform) */
.lg-cform .elementor-field-group input,
.lg-cform .elementor-field-group select,
.lg-cform .elementor-field-group textarea{
  background:var(--lg-paper)!important;padding:13px 15px!important;
  -webkit-appearance:none;appearance:none;
}
.lg-cform .elementor-field-group textarea{min-height:88px;resize:vertical;line-height:1.6}
.lg-cform .elementor-field-group input::placeholder,
.lg-cform .elementor-field-group textarea::placeholder{color:rgba(14,14,14,.28)}
.lg-cform .elementor-field-group input:focus,
.lg-cform .elementor-field-group select:focus,
.lg-cform .elementor-field-group textarea:focus{
  background:#FFFFFF!important;border-color:var(--lg-blue)!important;outline:none;
}
.lg-cform .elementor-field-group select{
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7' viewBox='0 0 11 7'%3E%3Cpath d='M1 1l4.5 4.5L10 1' stroke='rgba(14,14,14,.4)' stroke-width='1.4' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;
  background-position:right 15px center;padding-right:40px!important;cursor:pointer;
}
.lg-cform .elementor-field-type-acceptance{align-items:flex-start}
.lg-cform .elementor-field-type-acceptance label,
.lg-cform .elementor-field-type-acceptance .elementor-field-option label{
  font-size:12.5px;line-height:1.62;color:#63636A;font-weight:300;letter-spacing:0;text-transform:none;
}
.lg-cform .elementor-field-type-acceptance input[type=checkbox]{
  accent-color:var(--lg-blue);width:16px;height:16px;margin-top:3px;cursor:pointer;
}
.lg-cform .elementor-button{width:100%;margin-top:16px}
.lg-cform .elementor-message{font-size:14px;line-height:1.68}


/* 38 - .flag compliance callout (security clause 02: offshore data). Cream
   plate with a 3px vertical gradient edge; no native control paints that. */
.lg-flag{background:#FFFDF7;position:relative}
.lg-flag::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,#BC006F 0%,#8A2FA8 100%)}


/* 39 — filter chips (.filt/.seg on /industries and /customer-stories).
   Native button widgets with class lg-seg-btn; the page's Custom Code
   snippet toggles .on. Source: .seg button.on{background:var(--ink);color:#fff} */
.lg-seg-btn .elementor-button{cursor:pointer}
.lg-seg-btn.on .elementor-button{background-color:var(--lg-ink)!important;color:#fff!important}
.lg-seg-btn.on .elementor-button:hover{background-color:var(--lg-ink)!important}
/* end 39 */


/* 40 — interactive tool furniture (.lg-tool: /speed-test, /gbp-audit,
   /calculator, /google-link-generator, /hear-it, /test-drive-webchat).
   Only what Elementor has no control for: states the page scripts toggle,
   the option tick, meter/slider drawing and rows the scripts write as HTML.
   Every rule is off inside the editor so all steps stay editable there. */
body:not(.elementor-editor-active) .lg-tool .gq:not(.on){display:none!important}
body:not(.elementor-editor-active) .lg-tool.res:not(.on),
body:not(.elementor-editor-active) .lg-tool .res:not(.on){display:none!important}
body:not(.elementor-editor-active) .lg-tool [data-lg-hidden]{display:none!important}
body:not(.elementor-editor-active) .lg-tool [hidden]:not(a){display:none!important}
.lg-tool a[hidden]{visibility:hidden!important}
.lg-tool .gopt{cursor:pointer;transition:border-color .25s ease,background-color .25s ease,transform .25s ease}
.lg-tool .gopt:hover{border-color:rgba(14,14,14,.32)!important;transform:translateX(3px)}
.lg-tool .gopt.sel{border-color:rgba(14,14,14,.55)!important;background-color:#fff!important}
.lg-tool .gopt:focus-visible{outline:2px solid var(--lg-blue);outline-offset:3px}
.lg-tool .gopt input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.lg-tool .gopt .tick{position:relative;flex:none!important}
.lg-tool .gopt .tick::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--lg-grad);opacity:0;transform:scale(.4);transition:opacity .2s ease,transform .2s ease}
.lg-tool .gopt.sel .tick{border-color:rgba(14,14,14,.55)!important}
.lg-tool .gopt.sel .tick::after{opacity:1;transform:scale(1)}
.lg-tool .lg-fill{transition:width .45s cubic-bezier(.16,.9,.24,1)}
.lg-tool .res-meter .lg-fill{transition:width .9s cubic-bezier(.16,.9,.24,1)}
.lg-tool .res-meter .lg-fill,.lg-tool .gbar .lg-fill{position:absolute!important;left:0;top:0;bottom:0}
.lg-tool .res-meter,.lg-tool .gbar{position:relative}
.lg-tool .rdone{display:none!important}
.lg-tool.sent .rdone,.lg-tool .sent .rdone{display:flex!important}
.lg-tool.sent .lg-form-wrap,.lg-tool .sent .lg-form-wrap{display:none!important}
.lg-tool .lg-input-slot input,.lg-tool .lg-input-slot textarea,.lg-tool .lg-input-slot select{width:100%;background:var(--lg-paper);border:1px solid var(--lg-rule);border-radius:2px;padding:15px 16px;font:inherit;font-size:15px;color:#0E0E0E}
.lg-tool .lg-input-slot input:focus,.lg-tool .lg-input-slot textarea:focus{outline:none;border-color:#0E0E0E;background:#fff}
.lg-tool input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:4px;border-radius:100px;background:rgba(14,14,14,.12);outline:none;margin:0;padding:0;border:0;cursor:pointer}
.lg-tool input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--lg-ink);border:2px solid var(--lg-paper);box-shadow:0 1px 5px rgba(0,0,0,.28);cursor:pointer}
.lg-tool input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--lg-ink);border:2px solid var(--lg-paper);box-shadow:0 1px 5px rgba(0,0,0,.28);cursor:pointer}
.lg-tool input[type=range]:focus-visible{outline:2px solid var(--lg-blue);outline-offset:6px}
.lg-tool .arow{display:grid;grid-template-columns:1fr 128px 110px 74px;gap:18px;padding:13px 0;border-bottom:1px solid var(--lg-rule);align-items:baseline;font-size:14.5px}
.lg-tool .arow:last-child{border-bottom:none}
.lg-tool .arow .ak,.lg-tool .arow .as{font-size:11px;letter-spacing:.13em;text-transform:uppercase}
.lg-tool .arow .ak{font-weight:600;color:rgba(14,14,14,.38)}
.lg-tool .arow .as{font-weight:700}
.lg-tool .arow .as.ok{color:rgba(14,14,14,.45)}
.lg-tool .arow .as.look{background:var(--lg-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.lg-tool .arow .as.miss{color:var(--lg-magenta)}
.lg-tool .arow .ap{text-align:right;font-variant-numeric:tabular-nums;color:#63636A}
@media(max-width:767px){.lg-tool .arow{grid-template-columns:1fr auto;gap:4px 14px}.lg-tool .arow .ak{grid-column:1}.lg-tool .arow .ap{grid-column:2;grid-row:1}}
.lg-tool .fld .elementor-heading-title{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.lg-tool .v{font-size:20px;font-weight:500;letter-spacing:-.025em;white-space:nowrap;background:var(--lg-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.lg-tool .wl small{display:block;font-size:12px;color:rgba(14,14,14,.42);margin-top:3px;line-height:1.45}
.lg-tool .wr.neg .wv .elementor-heading-title{color:var(--lg-magenta)!important}
.lg-tool .wr.sum{border-bottom:2px solid #0E0E0E!important}
.lg-tool .wr.sum .wl,.lg-tool .wr.sum .wl p{color:#0E0E0E!important;font-weight:500!important}
.lg-tool .wr.sum .wv .elementor-heading-title{font-size:19px!important}
@media(max-width:767px){.lg-tool .fld .elementor-heading-title{flex-wrap:wrap;gap:4px}}
.lg-tool .turn.pend{opacity:.13;pointer-events:none}
.lg-tool .turn.shown{opacity:1}
body:not(.elementor-editor-active) .chid{display:none!important}
body:not(.elementor-editor-active) .lg-tool .find:not(.on){display:none!important}
.lg-tool .qrc{width:100%;max-width:236px;aspect-ratio:1/1;background:#fff;border:1px solid var(--lg-rule);border-radius:2px}
.lg-tool .qrc svg{display:block;width:100%;height:100%}
.lg-tool .pin .lg-input-slot{flex:1 1 300px!important;width:auto!important;min-width:0}
.lg-tool .lg-input-slot textarea{min-height:210px;resize:vertical;line-height:1.66;font-size:14px}
.lg-tool .lg-input-slot input[type=range]{margin:10px 0}
.lg-tool .lout .elementor-heading-title{margin-top:6px;padding:16px 18px;background:rgba(255,255,255,.05);border:1px solid var(--lg-rule-d);border-radius:2px;word-break:break-all;user-select:all}
.lg-tool ol.rts{list-style:none;counter-reset:rt;margin:0;padding:0;border-top:1px solid var(--lg-rule)}
.lg-tool ol.rts li{counter-increment:rt;position:relative;padding:16px 0 16px 38px;border-bottom:1px solid var(--lg-rule);font-size:14px;line-height:1.62}
.lg-tool ol.rts li::before{content:counter(rt,decimal-leading-zero);position:absolute;left:0;top:17px;font-size:11px;letter-spacing:.12em;font-weight:700;color:rgba(14,14,14,.35)}
.lg-tool ol.rts li strong,.lg-tool ul.chk li strong{color:#0E0E0E;font-weight:500}
.lg-tool ul.chk{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}
.lg-tool ul.chk li{position:relative;padding-left:22px;font-size:14.5px;line-height:1.62}
.lg-tool ul.chk li::before{content:'';position:absolute;left:0;top:11px;width:9px;height:1px;background:var(--lg-magenta)}
.lg-tool .pstat.bad,.lg-tool .pstat.bad p,.lg-tool .pstat.bad strong{color:var(--lg-magenta)!important}
.lg-tool .bx[data-ask]{cursor:pointer;transition:background-color .22s ease}
.lg-tool .bx[data-ask]:hover{background-color:#fff}
/* /get-started order card (#bkg) */
.lg-tool .pk-opt{cursor:pointer;transition:background-color .2s ease}
.lg-tool .pk-opt:hover{background-color:rgba(255,255,255,.035)}
.lg-tool .pk-opt.on{background-color:rgba(255,255,255,.06)}
.lg-tool .pk-opt input{width:15px;height:15px;accent-color:var(--lg-blue);cursor:pointer;margin-top:3px;flex:none}
.lg-tool .pk-msg{display:none!important}
.lg-tool .pk.bad .pk-msg{display:block!important}
.lg-tool .pk.bad .pk-h:first-child .elementor-heading-title{color:#FF6FB0!important}
.lg-tool .os-row small{display:block;font-size:11.5px;color:rgba(255,255,255,.42);margin-top:3px}
.lg-tool .os-row b,.lg-tool .os-row strong{color:#fff;font-weight:500}
.lg-tool .osum{border-left-color:#8A2FA8!important;background:rgba(255,255,255,.035)}
.lg-tool .gerr{display:none}
.lg-tool .elementor-field-group .msg{display:none;width:100%;font-size:11.5px;letter-spacing:.04em;color:#FF6FB0;margin-top:8px}
.lg-tool .elementor-field-group.bad .msg{display:block}
.lg-tool .elementor-field-group.bad input,.lg-tool .elementor-field-group.bad select{border-color:var(--lg-magenta)!important}
.lg-tool.sent .bform-part{display:none!important}
.lg-tool .bdone{display:none!important}
.lg-tool.sent .bdone{display:flex!important}
.lg-tool .elementor-field-type-acceptance a{color:#fff;border-bottom:1px solid rgba(255,255,255,.3)}
.elementor-widget-text-editor code,.elementor-heading-title code,.lg-tool code{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:767px){.lg-seg-btn{flex:1 1 auto}.lg-seg-btn .elementor-button{width:100%;border-bottom:1px solid var(--lg-rule)}}
/* end 40 */


/* 41 — guide hero: Post Excerpt answer block colour (the widget's own colour control targets a wrapper that optimised markup removes) */
.elementor-widget-theme-post-excerpt.lg-answer{color:var(--e-global-color-1aaf3579)}
.lg-guide ol,.lg-guide ul{margin:0 0 0 1.2em;padding:0}
.lg-guide li{margin:0 0 .45em}
.lg-guide-table p,.lg-guide-tip p{margin:0}
.lg-guide-table .e-con{align-items:flex-start}
.lg-guide code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em;background:var(--e-global-color-113eacab);padding:.1em .35em;border-radius:3px;color:var(--e-global-color-05111505);white-space:nowrap}


/* 42 — .tlink inside dark top-level sections (hero, dark bands, closing): light text so inline links stay visible (22/10/2026) */
.elementor[data-elementor-type="wp-page"] > .e-con.lg-grad-top .tlink,
.elementor[data-elementor-type="wp-page"] > .e-con.lg-grad-bottom .tlink{color:#fff;border-bottom-color:rgba(255,255,255,.35)}
.elementor[data-elementor-type="wp-page"] > .e-con.lg-grad-top .tlink:hover,
.elementor[data-elementor-type="wp-page"] > .e-con.lg-grad-bottom .tlink:hover{border-bottom-color:#fff}/* End custom CSS */