.elementor-kit-8{--e-global-color-primary:#121211;--e-global-color-secondary:#1f7a73;--e-global-color-text:#6D6E70;--e-global-color-accent:#CF3339;--e-global-color-off-white:#F3F3F3;--e-global-color-action-hover:#17605a;--e-global-color-np-teal:#3AB3AA;--e-global-color-faint:#909193;--e-global-color-8fa63d8:#7FD6CE;--e-global-color-3bfbceb:#F3F3F3;--e-global-color-cf2c1e7:#F3F3F3AD;--e-global-color-c14756d:#F2F3F3C7;--e-global-typography-primary-font-family:"Newsreader";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Newsreader";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Plus Jakarta Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Plus Jakarta Sans";--e-global-typography-accent-font-weight:500;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}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 *//* ===================================================================
   ADVANT — Elementor stylesheet
   Paste the whole of this file into:
   Elementor editor -> hamburger menu -> Site Settings -> Custom CSS
   -----------------------------------------------------------------
   Assembled 2026-09-13 from the live static site:
     1. Google Fonts import (was a <link> in index.html)
     2. css/advantage.css                          -- verbatim, unmodified
     3. the page-specific <style> block from index.html head -- verbatim
     4. an Elementor adapter layer                 -- new, see bottom
   Sections 2 and 3 are byte-for-byte copies of the production files.
   Do not "tidy" any value in them; the live site is the reference.
   =================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@600;700;800;900&family=Inter:wght@400;500;600;700&display=swap');

/* ===================================================================
   PRE-DESIGN LAYER  (must stay ABOVE css/advantage.css)
   -----------------------------------------------------------------
   Elementor paints a container's background overlay with
   `.e-con::before`, which hard-sets content/position/display/width/
   height/inset/border/opacity on that pseudo-element. Our design uses
   ::before on some of those same elements -- .capture's "FREE" ribbon
   is the visible one -- and inherits Elementor's geometry, which
   stretches the ribbon over the whole card.

   This rule carries exactly ONE class of specificity, the same as the
   design's own `.capture::before`, and sits BEFORE the design CSS:
     * it beats Elementor, because this stylesheet loads after the
       plugin's frontend.min.css;
     * it loses to the design, because the design's rule comes later in
       this same file.
   Never raise its specificity and never move it below the design CSS.
   =================================================================== */
/* Hello Elementor's reset.css sets margin, padding, font-size and
   line-height on bare ELEMENT .elementor-kit-8s -- p, li, h1..h6, ul, dl, form
   controls. Those are (0,0,1) and therefore beat advantage.css's
   "*{margin:0;padding:0}" (0,0,0) no matter which sheet wins, so the design
   silently gained theme spacing it never had: the lead form's fine print
   picked up 14.4px of margin-bottom, and headings picked up the theme's rem
   font sizes. The static site has no theme, so it renders with the UA
   defaults on top of that "*" reset -- this block restores exactly that.
   Element specificity, above the design, so any design rule still wins. */
h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,figure,figcaption,blockquote,pre,
fieldset,legend,table,form,hr,button,input,select,textarea,optgroup{
  margin:0; padding:0;
}
h1{font-size:2em}h2{font-size:1.5em}h3{font-size:1.17em}
h4{font-size:1em}h5{font-size:.83em}h6{font-size:.67em}
h1,h2,h3,h4,h5,h6{line-height:normal}
p,li,dt,dd,ol,ul,figcaption,label{font-size:inherit;line-height:inherit}
/* Form controls: the theme gives them a line-height the UA does not, which
   made every .capture input 52px tall instead of 48 and the lead-capture card
   18px taller than the static page. */
button,input,select,textarea{line-height:normal}
html{line-height:normal}

.adv::before, .adv::after{
  content:none;
  position:static;
  display:inline;
  width:auto; height:auto;
  inset:auto;
  border:0; border-radius:0;
  opacity:1; mix-blend-mode:normal; transition:none;
  background:none; box-shadow:none; transform:none;
}

/* =================================================================== */
/* 2. css/advantage.css — shared theme, copied verbatim                */
/* =================================================================== */
/* ===================================================================
   Advantage New York — shared theme
   Base: dark + brand blue. Per page, set --accent / --accent2 / --on-accent
   =================================================================== */
:root{
  --blue:#2544E0; --blue2:#5B2EFF; --ink:#0A0E1F; --ink2:#0F1533; --navy:#0C1230;
  --body:#43444F; --muted:#6B6C7E; --band:#F5F7FB; --border:#E6E8F2; --white:#fff;
  --green:#16A34A; --amber:#FFB800;
  /* accent defaults (overridden per page) */
  --accent:#2563EB; --accent2:#38BDF8; --on-accent:#ffffff;
  --grad:linear-gradient(115deg,#2544E0,#5B2EFF 55%,#7A2BE0);
  --accent-grad:linear-gradient(100deg,var(--accent),var(--accent2));
  --maxw:1180px; --head:'Poppins',sans-serif; --font:'Inter',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:86px}
body{font-family:var(--font);color:var(--body);font-size:17px;line-height:1.65;background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
h1,h2,h3,h4{font-family:var(--head);color:var(--ink);line-height:1.1;letter-spacing:-.5px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.accent-text{background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{display:inline-block;font-family:var(--head);font-weight:700;font-size:13px;letter-spacing:1.4px;text-transform:uppercase;color:var(--accent)}
section{padding:84px 0}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--head);font-weight:700;font-size:16px;padding:15px 30px;border-radius:12px;cursor:pointer;border:none;transition:.18s;text-align:center}
.btn-accent{background:var(--accent-grad);color:var(--on-accent);box-shadow:0 10px 28px rgba(0,0,0,.18)}
.btn-accent:hover{transform:translateY(-2px) scale(1.01);filter:brightness(1.05)}
.btn-lg{font-size:18px;padding:18px 38px}
.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border:1.5px solid rgba(255,255,255,.28)}
.btn-ghost:hover{background:rgba(255,255,255,.16)}
.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:#000}

.reveal{opacity:0;transform:translateY(24px);transition:.6s}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* ===== HEADER ===== */
.site-header{position:fixed;inset:0 0 auto;z-index:90;transition:.3s;background:transparent}
.site-header.solid{background:rgba(10,14,31,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.site-header nav{display:flex;align-items:center;justify-content:space-between;height:82px;gap:20px}
.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}
.brand img{height:48px;width:auto}
.menu{display:flex;align-items:center;gap:26px}
.menu a{color:rgba(255,255,255,.86);font-weight:600;font-size:15px;position:relative;padding:4px 0}
.menu a:hover,.menu a.active{color:#fff}
.menu a.active::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--accent-grad);border-radius:2px}
.header-cta{display:flex;align-items:center;gap:16px}
.header-cta .ph{color:#fff;font-weight:700;font-family:var(--head);font-size:15px;white-space:nowrap}
.burger{display:none;background:none;border:none;color:#fff;font-size:28px;cursor:pointer;line-height:1}
@media(max-width:980px){
  .menu,.header-cta .ph,.header-cta .btn{display:none}
  .burger{display:block}
  .menu.open{display:flex;position:absolute;top:78px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:6px;background:var(--ink2);padding:18px 22px;border-bottom:1px solid rgba(255,255,255,.1)}
  .menu.open a{padding:10px 0;width:100%;font-size:16px}
}
.menu.open{top:82px}

/* ===== nav dropdown (Solutions) ===== */
.has-drop{position:relative}
.has-drop::after{content:"";position:absolute;left:0;right:0;top:100%;height:10px}
.drop-toggle{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.drop-caret{font-size:10px;transition:transform .2s}
.has-drop:hover .drop-caret{transform:rotate(180deg)}
.drop-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:210px;background:var(--ink2);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:8px;box-shadow:0 20px 50px rgba(0,0,0,.45);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.18s;z-index:100}
.has-drop:hover .drop-menu,.has-drop:focus-within .drop-menu,.has-drop.open .drop-menu{opacity:1;visibility:visible;transform:none}
.has-drop.open .drop-caret{transform:rotate(180deg)}
.drop-toggle{background:none;border:0;padding:0;font:inherit;color:inherit;text-align:left}
.drop-menu a{display:block;padding:10px 12px;border-radius:8px;color:rgba(255,255,255,.86);font-weight:600;white-space:nowrap}
.drop-menu a:hover{background:rgba(255,255,255,.08);color:#fff}
@media(max-width:980px){
  .has-drop{width:100%}
  .has-drop::after{display:none}
  .drop-menu{position:static;opacity:1;visibility:visible;transform:none;background:transparent;border:none;box-shadow:none;padding:2px 0 2px 14px;min-width:0}
}

/* ===== HERO ===== */
.hero{position:relative;background:radial-gradient(120% 130% at 80% -10%,#1a2358 0%,var(--ink) 60%);color:#fff;padding:132px 0 88px;overflow:hidden}
.hero .glow{position:absolute;border-radius:50%;filter:blur(110px);pointer-events:none}
.hero .g1{width:500px;height:500px;background:var(--accent);opacity:.32;top:-150px;right:-70px}
.hero .g2{width:420px;height:420px;background:var(--blue2);opacity:.4;bottom:-180px;left:-120px}
.hero .blueprint{position:absolute;inset:0;z-index:1;opacity:.05;pointer-events:none;background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);background-size:46px 46px}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:center}
.hero h1{font-size:56px;font-weight:800;color:#fff;letter-spacing:-1.4px;margin-bottom:20px}
.hero p.lead{font-size:20px;color:rgba(255,255,255,.85);margin-bottom:28px;max-width:540px}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}
.badge{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.2);padding:6px 13px;border-radius:30px;font-size:12.5px;font-weight:600}
.badge .dot{width:8px;height:8px;border-radius:50%;background:#4ADE80}
.stars{color:var(--amber);letter-spacing:2px}
.hero-rating{margin-top:20px;display:flex;align-items:center;gap:10px;font-size:14px;color:rgba(255,255,255,.75)}

/* lead capture card */
.capture{background:#fff;border-radius:20px;box-shadow:0 40px 90px rgba(0,0,0,.42);padding:30px;color:var(--ink);position:relative}
.capture::before{content:"FREE";position:absolute;top:-14px;right:22px;background:var(--accent-grad);color:var(--on-accent);font-family:var(--head);font-weight:800;font-size:13px;letter-spacing:1px;padding:6px 16px;border-radius:20px}
.capture h3{font-size:22px;font-weight:800;margin-bottom:4px}
.capture .sub{font-size:14px;color:var(--muted);margin-bottom:18px}
.capture input,.capture select{width:100%;padding:14px 15px;border:1.5px solid #cfd2e2;border-radius:10px;font-family:var(--font);font-size:15px;margin-bottom:12px;color:var(--ink)}
.capture input:focus,.capture select:focus{outline:none;border-color:var(--accent)}
.capture .btn{width:100%}
.capture .fine{font-size:12px;color:var(--muted);text-align:center;margin-top:11px}
.capture.done{text-align:center;padding:50px 30px}
.capture.done .ck{width:64px;height:64px;border-radius:50%;background:#E7F6EC;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:32px}

/* ===== SECTION HEADS ===== */
.sec-head{max-width:680px;margin:0 auto 50px;text-align:center}
.sec-head h2{font-size:38px;font-weight:800;margin:10px 0 12px;letter-spacing:-.9px}
.sec-head p{color:var(--muted);font-size:18px}
.on-dark .sec-head h2{color:#fff}.on-dark .sec-head p{color:rgba(255,255,255,.7)}

/* strip */
.strip{background:var(--accent-grad);color:var(--on-accent);padding:14px 0;overflow:hidden;white-space:nowrap}
.strip .t{display:inline-block;animation:sc 26s linear infinite;word-spacing:18px}
.strip span{font-family:var(--head);font-weight:800;font-size:16px;margin:0 28px}
@keyframes sc{to{transform:translateX(-50%)}}

/* pains */
.pains{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.pain{background:#fff;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:12px;padding:22px}
.pain b{color:var(--ink);font-family:var(--head);display:block;margin-bottom:5px;font-size:16px}
.pain p{font-size:14px;color:var(--muted)}
@media(max-width:820px){.pains{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.pains{grid-template-columns:1fr}}

/* services */
.svc{background:var(--ink);color:#fff}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.svc-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:26px;transition:.2s}
.svc-card:hover{background:rgba(255,255,255,.08);transform:translateY(-4px);border-color:var(--accent)}
.svc-card .ic{width:50px;height:50px;border-radius:13px;background:var(--accent-grad);display:flex;align-items:center;justify-content:center;margin-bottom:15px}
.svc-card .ic svg{width:26px;height:26px;stroke:var(--on-accent)}
.svc-card h3{font-size:19px;font-weight:700;color:#fff;margin-bottom:7px}
.svc-card p{font-size:14px;color:rgba(255,255,255,.72)}
.svc-card .tagm{display:inline-block;margin-top:11px;font-size:11px;font-weight:700;color:var(--accent2);border:1px solid rgba(255,255,255,.25);padding:3px 9px;border-radius:20px}
@media(max-width:860px){.svc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.svc-grid{grid-template-columns:1fr}}

/* industry picker cards (light background) */
.pick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.pick-card{display:block;background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px;transition:.2s;box-shadow:0 4px 16px rgba(20,21,28,.05)}
.pick-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(20,21,28,.10);border-color:var(--accent)}
.pick-card .ic{width:52px;height:52px;border-radius:13px;background:var(--accent-grad);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.pick-card .ic svg{width:26px;height:26px;stroke:var(--on-accent)}
.pick-card h3{font-size:19px;font-weight:700;color:var(--ink);margin-bottom:6px}
.pick-card p{font-size:14px;color:var(--muted)}
.pick-card .go{display:inline-block;margin-top:12px;font-size:14px;font-weight:700;color:var(--accent)}
@media(max-width:860px){.pick-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.pick-grid{grid-template-columns:1fr}}

/* stats */
.stats{background:var(--accent-grad)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.stat .n{font-family:var(--head);font-weight:900;font-size:50px;color:var(--on-accent);line-height:1;letter-spacing:-1px}
.stat .l{color:var(--on-accent);opacity:.82;font-weight:600;font-size:15px;margin-top:6px}
@media(max-width:640px){.stats-grid{grid-template-columns:1fr 1fr;gap:30px}.stat .n{font-size:40px}}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.step{background:#fff;border:1px solid var(--border);border-radius:16px;padding:30px;text-align:center}
.step .num{width:54px;height:54px;border-radius:16px;background:var(--accent-grad);color:var(--on-accent);font-family:var(--head);font-weight:900;font-size:21px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.step h3{font-size:20px;font-weight:700;margin-bottom:6px}
.step p{font-size:15px;color:var(--muted)}
@media(max-width:720px){.steps{grid-template-columns:1fr}}

/* reviews */
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.review{background:#fff;border:1px solid var(--border);border-radius:16px;padding:26px;box-shadow:0 6px 22px rgba(20,21,28,.05)}
.review .stars{margin-bottom:12px;font-size:16px}
.review p{font-size:15.5px;color:var(--ink);margin-bottom:16px}
.review .who{display:flex;align-items:center;gap:11px}
.review .av{width:42px;height:42px;border-radius:50%;background:var(--accent-grad);display:flex;align-items:center;justify-content:center;color:var(--on-accent);font-weight:800;font-family:var(--head)}
.review .name{font-weight:700;color:var(--ink);font-size:14px}
.review .role{font-size:12.5px;color:var(--muted)}
@media(max-width:820px){.reviews{grid-template-columns:1fr}}

/* offer */
.offer{position:relative;background:var(--ink);color:#fff;overflow:hidden}
.offer .glow{position:absolute;width:520px;height:520px;border-radius:50%;filter:blur(120px)}
.offer .o1{background:var(--accent);opacity:.35;top:-200px;left:-80px}.offer .o2{background:var(--blue2);opacity:.35;bottom:-220px;right:-60px}
.offer-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr .92fr;gap:44px;align-items:center}
.offer h2{color:#fff;font-size:40px;font-weight:900;letter-spacing:-1px;margin-bottom:16px}
.offer .lead{color:rgba(255,255,255,.85);font-size:18px;margin-bottom:20px}
.offer ul{list-style:none;margin-bottom:8px}
.offer li{display:flex;gap:11px;align-items:flex-start;padding:8px 0;font-size:16px}
.offer li .c{color:var(--accent2);font-weight:900;font-size:18px}
.urgency{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);color:var(--accent2);font-weight:700;font-size:13.5px;padding:8px 15px;border-radius:30px;margin-bottom:20px;font-family:var(--head)}
@media(max-width:820px){.offer-grid{grid-template-columns:1fr}}

/* faq */
.faq{max-width:800px;margin:0 auto}
details{border:1px solid var(--border);border-radius:12px;padding:20px 24px;margin-bottom:12px}
details[open]{border-color:var(--accent);box-shadow:0 8px 24px rgba(0,0,0,.05)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;font-family:var(--head);font-weight:700;color:var(--ink);font-size:17px}
summary::-webkit-details-marker{display:none}
summary .p{color:var(--accent);font-size:24px;transition:.2s}
details[open] summary .p{transform:rotate(45deg)}
details .a{margin-top:12px;font-size:15px;color:var(--body)}

/* final */
.final{background:var(--accent-grad);text-align:center}
.final h2{color:var(--on-accent);font-size:42px;font-weight:900;letter-spacing:-1px;margin-bottom:14px}
.final p{color:var(--on-accent);opacity:.9;font-size:19px;margin-bottom:26px}

/* footer */
.site-footer{background:var(--navy);color:rgba(255,255,255,.72);padding:60px 0 30px}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:36px;margin-bottom:36px}
.site-footer .brand img{height:52px;margin-bottom:14px}
.site-footer p{font-size:14px;line-height:1.7}
.foot-col h4{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:1px;margin-bottom:14px}
.foot-col a{display:block;font-size:14px;padding:5px 0;color:rgba(255,255,255,.72)}
.foot-col a:hover{color:#fff}
.foot-col .sa{font-size:12px;color:var(--accent2)}
.foot-bottom{border-top:1px solid rgba(255,255,255,.14);padding-top:22px;font-size:13px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:rgba(255,255,255,.6)}
@media(max-width:760px){.foot-grid{grid-template-columns:1fr 1fr;gap:26px}}

/* sticky mobile bar */
.mbar{position:fixed;bottom:0;left:0;right:0;z-index:95;display:none;gap:10px;padding:10px;background:rgba(10,14,31,.96);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.1)}
.mbar a{flex:1;padding:14px;border-radius:11px;font-family:var(--head);font-weight:800;text-align:center;font-size:15px}
.mbar .call{background:rgba(255,255,255,.12);color:#fff}
.mbar .cta{background:var(--accent-grad);color:var(--on-accent)}
@media(max-width:680px){.mbar{display:flex}.site-footer{padding-bottom:96px}}

@media(max-width:640px){
  .hero{padding:104px 0 62px}.hero h1{font-size:38px}.hero-grid{grid-template-columns:1fr}
  .sec-head h2{font-size:28px}.offer h2,.final h2{font-size:30px}section{padding:64px 0}
}

/* ===================================================================
   ELEMENTOR ADAPTER LAYER
   Added for the WordPress/Elementor build. Nothing above this line was
   changed from the static site -- this block only neutralises Elementor's
   own layout defaults so the markup above behaves exactly as it does in
   index.html.

   Every top-level Elementor container in this build carries the class
   "adv" plus its own section class. All resets are scoped to .adv so
   they can never leak into a page built with ordinary Elementor widgets.
   =================================================================== */

/* 1 -- containers must not add width, padding, gap or flex behaviour.
   Our sections own all of that. */
.e-con.adv{
  /* CUSTOM PROPERTIES ONLY -- no literal width/max-width/padding/margin.
     Elementor reads all four from these variables:
         .e-con { width:var(--width);
                  padding-inline-start:var(--padding-inline-start); ... }
         .e-con-full { padding-block-start:var(--padding-block-start); ... }
     so zeroing the variables removes Elementor's own spacing WITHOUT
     putting a two-class declaration in front of the design's own
     `.wrap{padding:0 22px}`, `.pain{padding:22px}`, `.svc-card{padding:26px}`.
     Writing those literals here was the bug that flattened every card and
     let every section run edge to edge (2026-09-13). */
  --width:100%;
  --content-width:100%;
  --padding-block-start:0px; --padding-block-end:0px;
  --padding-inline-start:0px; --padding-inline-end:0px;
  --margin-block-start:0px; --margin-block-end:0px;
  --margin-inline-start:0px; --margin-inline-end:0px;
  --gap:0px;
}

/* Elementor writes `--display:flex` into the PAGE stylesheet, per element:
       .elementor-176 .elementor-element.elementor-element-7308189{--display:flex}
   That is three classes and a later sheet, so the override has to be four.
   It only sets the FALLBACK display: `display:var(--display)` is one class in
   the plugin sheet, so any `display:` the design declares still wins. */
.elementor-element.e-con.adv.adv{
  --display:block;
  /* Elementor also defaults a container to flex-direction:column, written the
     same per-element way. The design's own "display:flex" rows -- .hero-cta,
     .header-cta, .badges, .brand, .foot-bottom -- therefore stacked: on the tax
     page the two hero buttons became two full-width rows and the hero grew 63px
     (2026-09-13). Reset every flex default to its CSS initial value so a design
     rule that sets one wins and a design rule that sets none behaves as it does
     on the static site. */
  --flex-direction:row;
  --flex-wrap:nowrap;
  --justify-content:normal;
  --align-items:normal;
  --align-content:normal;
}

.e-con.adv > .e-con-inner{
  display:block;
  width:100%;
  max-width:none;
  padding:0;
  margin:0;
  --content-width:100%;
  --gap:0px;
}

/* 2 -- widgets must not add their own spacing or width limits. */
.e-con.adv .elementor-widget,
.e-con.adv .elementor-widget:not(:last-child){
  /* Same rule as above: variables, not literals. A `margin:0` here is two
     classes and would beat any margin the design puts on an element that
     compiled to a widget. */
  --widgets-spacing:0px 0px;

  /* Elementor writes the KIT's global typography onto the widget WRAPPER --
     ".elementor-widget-text-editor{font-family:...}" -- one class, in the PAGE
     stylesheet, which loads after this one. This install was cloned from
     another Advant-built WordPress site, so that font is Plus Jakarta Sans and every Text Editor on
     the site inherited it instead of Inter. The wrapper is not part of the
     design's markup, so it must carry no typography of its own: everything
     inside then inherits from the container chain, exactly as on the static
     site. Two classes, so it beats the page stylesheet. Found 2026-09-13. */
  font-family:inherit; font-size:inherit; font-weight:inherit;
  font-style:inherit; line-height:inherit; letter-spacing:inherit;
  text-transform:inherit; color:inherit;
}
/* The Button widget's WRAPPER is Elementor's own div, never part of the design.
   If a ".btn*" rule ever reaches it -- an unmapped class, a page override -- it
   paints a second box around the real button. Three classes, so it wins. */
.e-con.adv .elementor-widget-button{background:none;border:0;box-shadow:none;
  border-radius:0;padding:0}
.e-con.adv .elementor-widget-container{margin:0;padding:0}
.e-con.adv .elementor-widget-html{line-height:inherit}

/* 3 -- Hello Elementor names two of its own wrappers .site-header and
   .site-footer -- the same class names this design uses -- and its
   header-footer.css boxes them:

       .site-header:not(.dynamic-header),
       .site-footer:not(.dynamic-footer){max-width:1140px}   (and 500/600/800
                                                              at smaller widths)

   That .elementor-kit-8 carries two classes, so a plain .site-header rule loses to it
   and the header and footer render boxed while the page sections go edge to
   edge. Match its specificity to release them. Measured on staging 2026-09-13.
   Keep the :not() in the .elementor-kit-8 -- without it we are back to one class and
   the theme wins again. */
.site-header:not(.dynamic-header),
.site-footer:not(.dynamic-footer){max-width:none;width:auto}
.site-header{padding:0;box-shadow:none;border:0}
.site-header .wrap{padding:0 22px}
.site-footer{padding:60px 0 30px;text-align:left}
@media(max-width:680px){.site-footer{padding-bottom:96px}}

/* 4 -- Elementor's kit writes global typography onto body. Leave the
   Site Settings typography fields empty and this keeps the site's own
   type stack authoritative. */
body.elementor-page,
body.elementor-kit-1,
body{
  font-family:var(--font);
  font-size:17px;
  line-height:1.65;
  color:var(--body);
  background:#fff;
}
/* NOTE -- there is deliberately NO heading rule here.
   An earlier version carried one, and it was a bug: "body.elementor-page h1"
   outranks ".hero h1", ".offer h2", ".final h2" and ".svc-card h3", so it
   repainted every light-on-dark heading in the site's own ink colour. The
   headings were invisible against their dark backgrounds.
   Verified 2026-09-13: Elementor's kit emits no heading typography at all
   while Site Settings -> Typography is left empty, so the h1-h4 rule already
   in advantage.css above is sufficient and must not be duplicated here at a
   higher specificity. If Elementor ever does start emitting heading rules,
   clear the Site Settings typography fields -- do not add an override. */

/* 5 -- the header is position:fixed, so nothing may create a stacking
   context above it, and the admin bar must not push it off-screen. */
.site-header{z-index:90}
.admin-bar .site-header{top:32px}
@media screen and (max-width:782px){.admin-bar .site-header{top:46px}}

/* 6 -- Elementor adds a wrapper around the page content that can clip
   the hero's blurred glow circles. */
.elementor-location-single,
.elementor-location-header,
.elementor-location-footer{overflow:visible}


/* ===================================================================
   BUTTON WIDGETS
   Elementor's Button widget puts our css_classes on an OUTER WRAPPER DIV and
   renders <a class="elementor-button"> two levels inside, so the .btn rules
   above -- which target the <a> itself -- never reach it. These are
   wrapper-scoped twins of that family. Same solution used on the earlier
   Advant build, where .btn--primary had to become .btnw--primary for exactly
   this reason.

   The original .btn rules stay: buttons inside HTML widgets (both lead forms
   and the header CTA) still use them. Keep the two families in step.

   Every .elementor-kit-8 is prefixed with .elementor-widget-button (the same wrapper
   element) because Elementor ships
   ".elementor-widget-button .elementor-button{background-color:
   var(--e-global-color-accent)}" at two classes and loads it AFTER the kit CSS
   -- a two-class twin ties and loses, which painted every button in the kit's
   accent (the inherited red) instead of the Advant gradient.
   =================================================================== */
.elementor-widget-button.btnw .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-family:var(--head);font-weight:700;font-size:16px;padding:15px 30px;border-radius:12px;
  cursor:pointer;border:none;transition:.18s;text-align:center;text-decoration:none;
  /* Elementor's widget-button.min.css sets line-height:1 on .elementor-button.
     The design's .btn sets none, so it inherits the body's 1.65 -- which is what
     gives the buttons their height. Without this the hero buttons came out 44px
     against the static site's 59px (tax page, 2026-09-13). */
  line-height:inherit}
.elementor-widget-button.btnw--accent .elementor-button{background:var(--accent-grad);color:var(--on-accent);
  box-shadow:0 10px 28px rgba(0,0,0,.18)}
.elementor-widget-button.btnw--accent .elementor-button:hover{transform:translateY(-2px) scale(1.01);filter:brightness(1.05)}
.elementor-widget-button.btnw--lg .elementor-button{font-size:18px;padding:18px 38px}
.elementor-widget-button.btnw--ghost .elementor-button{background:rgba(255,255,255,.08);color:#fff;
  border:1.5px solid rgba(255,255,255,.28)}
.elementor-widget-button.btnw--ghost .elementor-button:hover{background:rgba(255,255,255,.16)}
.elementor-widget-button.btnw--dark .elementor-button{background:var(--ink);color:#fff}
.elementor-widget-button.btnw--dark .elementor-button:hover{background:#000}

/* === BEGIN generated heading compatibility === */
/* Generated by heading-compat.py -- do not edit by hand.
   Mirrors the stylesheet's own h1..h6 colour rules onto Elementor's
   heading widget markup, which its plugin CSS would otherwise repaint
   with the kit's global colour at a specificity the design cannot beat. */
.elementor-widget.elementor-widget-heading h1.elementor-heading-title,.elementor-widget.elementor-widget-heading h2.elementor-heading-title,.elementor-widget.elementor-widget-heading h3.elementor-heading-title,.elementor-widget.elementor-widget-heading h4.elementor-heading-title{font-family:var(--head);color:var(--ink);line-height:1.1;letter-spacing:-.5px}
.hero .elementor-widget.elementor-widget-heading h1.elementor-heading-title{font-size:56px;font-weight:800;color:#fff;letter-spacing:-1.4px;margin-bottom:20px}
.capture .elementor-widget.elementor-widget-heading h3.elementor-heading-title{font-size:22px;font-weight:800;margin-bottom:4px}
.sec-head .elementor-widget.elementor-widget-heading h2.elementor-heading-title{font-size:38px;font-weight:800;margin:10px 0 12px;letter-spacing:-.9px}
.on-dark .sec-head .elementor-widget.elementor-widget-heading h2.elementor-heading-title{color:#fff}
.svc-card .elementor-widget.elementor-widget-heading h3.elementor-heading-title{font-size:19px;font-weight:700;color:#fff;margin-bottom:7px}
.pick-card .elementor-widget.elementor-widget-heading h3.elementor-heading-title{font-size:19px;font-weight:700;color:var(--ink);margin-bottom:6px}
.step .elementor-widget.elementor-widget-heading h3.elementor-heading-title{font-size:20px;font-weight:700;margin-bottom:6px}
.offer .elementor-widget.elementor-widget-heading h2.elementor-heading-title{color:#fff;font-size:40px;font-weight:900;letter-spacing:-1px;margin-bottom:16px}
.final .elementor-widget.elementor-widget-heading h2.elementor-heading-title{color:var(--on-accent);font-size:42px;font-weight:900;letter-spacing:-1px;margin-bottom:14px}
.foot-col .elementor-widget.elementor-widget-heading h4.elementor-heading-title{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:1px;margin-bottom:14px}
@media(max-width:640px){
.hero .elementor-widget.elementor-widget-heading h1.elementor-heading-title{font-size:38px}
.sec-head .elementor-widget.elementor-widget-heading h2.elementor-heading-title{font-size:28px}
.offer .elementor-widget.elementor-widget-heading h2.elementor-heading-title,.final .elementor-widget.elementor-widget-heading h2.elementor-heading-title{font-size:30px}
}
.wrap.e-con{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.eyebrow.e-con{display:inline-block}
section.e-con{padding:84px 0}
.btn.e-con{display:inline-flex;gap:9px;padding:15px 30px}
.btn-lg.e-con{padding:18px 38px}
.site-header nav.e-con{display:flex;gap:20px}
.brand.e-con{display:flex;gap:10px}
.menu.e-con{display:flex;gap:26px}
.header-cta.e-con{display:flex;gap:16px}
.burger.e-con{display:none}
@media(max-width:980px){
.menu.e-con,.header-cta .ph.e-con,.header-cta .btn.e-con{display:none}
.burger.e-con{display:block}
.menu.open.e-con{display:flex;gap:6px;padding:18px 22px}
}
.drop-toggle.e-con{display:inline-flex;gap:6px}
.drop-menu.e-con{min-width:210px;padding:8px}
.drop-toggle.e-con{padding:0}
@media(max-width:980px){
.has-drop.e-con{width:100%}
.drop-menu.e-con{padding:2px 0 2px 14px;min-width:0}
}
.hero.e-con{padding:132px 0 88px}
.hero .g1.e-con{width:500px}
.hero .g2.e-con{width:420px}
.hero-grid.e-con{display:grid;gap:44px}
.hero p.lead.e-con{margin-bottom:28px;max-width:540px}
.badges.e-con{display:flex;gap:10px;margin-bottom:22px}
.badge.e-con{display:inline-flex;gap:7px;padding:6px 13px}
.badge .dot.e-con{width:8px}
.hero-rating.e-con{margin-top:20px;display:flex;gap:10px}
.capture.e-con{padding:30px}
.capture .sub.e-con{margin-bottom:18px}
.capture .btn.e-con{width:100%}
.capture .fine.e-con{margin-top:11px}
.capture.done.e-con{padding:50px 30px}
.capture.done .ck.e-con{width:64px;display:flex;margin:0 auto 16px}
.sec-head.e-con{max-width:680px;margin:0 auto 50px}
.strip.e-con{padding:14px 0}
.strip .t.e-con{display:inline-block}
.pains.e-con{display:grid;gap:16px}
.pain.e-con{padding:22px}
.svc-grid.e-con{display:grid;gap:18px}
.svc-card.e-con{padding:26px}
.svc-card .ic.e-con{width:50px;display:flex;margin-bottom:15px}
.svc-card .tagm.e-con{display:inline-block;margin-top:11px;padding:3px 9px}
.pick-grid.e-con{display:grid;gap:18px}
.pick-card.e-con{display:block;padding:28px}
.pick-card .ic.e-con{width:52px;display:flex;margin-bottom:16px}
.pick-card .go.e-con{display:inline-block;margin-top:12px}
.stats-grid.e-con{display:grid;gap:20px}
.stat .l.e-con{margin-top:6px}
@media(max-width:640px){
.stats-grid.e-con{gap:30px}
}
.steps.e-con{display:grid;gap:24px}
.step.e-con{padding:30px}
.step .num.e-con{width:54px;display:flex;margin:0 auto 16px}
.reviews.e-con{display:grid;gap:20px}
.review.e-con{padding:26px}
.review .stars.e-con{margin-bottom:12px}
.review .who.e-con{display:flex;gap:11px}
.review .av.e-con{width:42px;display:flex}
.offer .glow.e-con{width:520px}
.offer-grid.e-con{display:grid;gap:44px}
.offer .lead.e-con{margin-bottom:20px}
.urgency.e-con{display:inline-flex;gap:8px;padding:8px 15px;margin-bottom:20px}
.faq.e-con{max-width:800px;margin:0 auto}
details .a.e-con{margin-top:12px}
.site-footer.e-con{padding:60px 0 30px}
.foot-grid.e-con{display:grid;gap:36px;margin-bottom:36px}
.foot-bottom.e-con{padding-top:22px;display:flex;gap:10px}
@media(max-width:760px){
.foot-grid.e-con{gap:26px}
}
.mbar.e-con{display:none;gap:10px;padding:10px}
@media(max-width:680px){
.mbar.e-con{display:flex}
.site-footer.e-con{padding-bottom:96px}
}
@media(max-width:640px){
.hero.e-con{padding:104px 0 62px}
section.e-con{padding:64px 0}
}
.btn.e-con{align-items:center;justify-content:center}
.site-header nav.e-con{align-items:center;justify-content:space-between;height:82px}
.brand.e-con{align-items:center;flex-shrink:0}
.menu.e-con{align-items:center}
.header-cta.e-con{align-items:center}
@media(max-width:980px){
.menu.open.e-con{flex-direction:column;align-items:flex-start}
}
.drop-toggle.e-con{align-items:center}
.hero .g1.e-con{height:500px}
.hero .g2.e-con{height:420px}
.hero-grid.e-con{align-items:center}
.badges.e-con{flex-wrap:wrap}
.badge.e-con{align-items:center}
.badge .dot.e-con{height:8px}
.hero-rating.e-con{align-items:center}
.capture.done .ck.e-con{height:64px;align-items:center;justify-content:center}
.svc-card .ic.e-con{height:50px;align-items:center;justify-content:center}
.pick-card .ic.e-con{height:52px;align-items:center;justify-content:center}
.step .num.e-con{height:54px;align-items:center;justify-content:center}
.review .who.e-con{align-items:center}
.review .av.e-con{height:42px;align-items:center;justify-content:center}
.offer .glow.e-con{height:520px}
.offer-grid.e-con{align-items:center}
.urgency.e-con{align-items:center}
.foot-bottom.e-con{justify-content:space-between;flex-wrap:wrap}
/* === END generated heading compatibility === *//* End custom CSS */