/* Anmarí Inmobiliarias — Elementor parity CSS v3
   Source geometry is copied from the supplied HTML.
   v3: ch-based text widths are applied to the actual text nodes, matching the source HTML rather than Elementor widget wrappers.
   Typography (family/size/weight/line-height/letter-spacing) remains in Elementor widget settings. */
:root{
  --an-bg:#000; --an-surface:#0c0a0b; --an-surface-2:#141011; --an-card:#100c0d;
  --an-red:#e23125; --an-orange:#e44d27; --an-orange-2:#e84922; --an-hot:#ff3b3b;
  --an-text:#fff; --an-muted:rgba(255,255,255,.66); --an-faint:rgba(255,255,255,.44);
  --an-line:rgba(255,255,255,.10); --an-line-2:rgba(255,255,255,.06);
  --an-pill:rgba(255,255,255,.045);
  --an-grad:linear-gradient(92deg,var(--an-red) 0%,var(--an-hot) 45%,var(--an-orange-2) 100%);
}

/* Elementor normalization — removes theme/global container geometry from this page only. */
.an-page{
  background:var(--an-bg);color:var(--an-text);overflow:hidden;
  width:100vw!important;max-width:none!important;
  margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;
}
.an-page *,.an-header *,.an-footer *{box-sizing:border-box}
.an-page>.e-con,.an-page>.e-con>.e-con-inner{width:100%!important;max-width:none!important}
.an-page .e-con{gap:0}
.an-page .elementor-widget-heading,.an-page .elementor-widget-text-editor,.an-page .elementor-widget-button,
.an-header .elementor-widget-heading,.an-header .elementor-widget-button,.an-footer .elementor-widget-heading{margin:0}
.an-page .elementor-widget-text-editor p,.an-page .elementor-widget-text-editor blockquote{margin:0}
.an-wrap{
  width:100%!important;max-width:1120px!important;margin-left:auto!important;margin-right:auto!important;
  padding-left:clamp(18px,4vw,40px)!important;padding-right:clamp(18px,4vw,40px)!important;
}
.grad,.an-stat-value .elementor-heading-title,.an-stat-big .elementor-heading-title,.an-dna-value .elementor-heading-title{
  background:var(--an-grad);-webkit-background-clip:text;background-clip:text;color:transparent!important;
}

/* Header — source parity */
.an-header{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.72);backdrop-filter:blur(14px);border-bottom:1px solid var(--an-line-2);color:var(--an-text)}
.an-nav-inner{height:66px!important;gap:16px!important}
.an-logo .elementor-heading-title,.an-footer-logo .elementor-heading-title{display:flex;align-items:center}
.an-logo-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--an-orange);margin-left:2px;margin-top:8px}
.an-logo-dot-small{width:6px;height:6px;margin-top:6px}
.an-nav-right{gap:14px!important}
.an-lang{border:1px solid var(--an-line);border-radius:999px;overflow:hidden;gap:0!important}
.an-lang-btn .elementor-button{background:transparent!important;border:0!important;border-radius:0!important;padding:7px 12px!important;transition:.18s}
.an-lang-btn .elementor-button:hover{color:#fff!important}
.an-lang-btn.is-active .elementor-button{background:var(--an-grad)!important;color:#fff!important}
.an-nav-partner .elementor-button{background:transparent!important;border:0!important;padding-left:0!important;padding-right:0!important}
.an-btn-primary .elementor-button{box-shadow:0 8px 26px -8px rgba(228,77,39,.8);transition:transform .15s,box-shadow .2s}
.an-btn-primary .elementor-button:hover{transform:translateY(-2px);box-shadow:0 14px 34px -8px rgba(228,77,39,.95)}
.an-btn-ghost .elementor-button{transition:border-color .2s}
.an-nav-cta .elementor-button{padding:10px 18px!important}

/* Hero — source parity */
.an-hero{padding:clamp(56px,9vw,110px) 0 clamp(40px,6vw,72px)!important;text-align:center;position:relative;z-index:1;overflow:hidden}
.an-hero .an-wrap{position:relative;z-index:1;align-items:center!important}
.an-glow{position:absolute!important;border-radius:50%;filter:blur(90px);opacity:.5;pointer-events:none;z-index:0}
.an-glow-a{width:520px!important;height:520px!important;background:radial-gradient(circle,rgba(226,49,37,.55),transparent 70%);top:-160px;right:-120px;animation:an-breathe 8s ease-in-out infinite}
.an-glow-b{width:420px!important;height:420px!important;background:radial-gradient(circle,rgba(232,73,34,.4),transparent 70%);top:420px;left:-160px;animation:an-breathe 10s ease-in-out infinite reverse}
.an-badge{width:auto!important;display:flex!important;align-items:center!important;gap:9px!important;padding:8px 16px!important;border-radius:999px;background:var(--an-pill);border:1px solid var(--an-line)}
.an-badge-icon{width:15px!important;min-width:15px}.an-badge-icon .elementor-icon{display:flex}
.an-hero-h1{width:100%!important;max-width:none!important;margin:26px auto 0!important}
.an-hero-h1 .elementor-heading-title{display:block;max-width:16ch;margin-left:auto;margin-right:auto}
.an-hero-lede{width:100%!important;max-width:none!important;margin:26px auto 0!important}
.an-hero-lede .elementor-widget-container>p{max-width:60ch;margin-left:auto!important;margin-right:auto!important}
.an-hero-cta{display:flex!important;gap:14px!important;justify-content:center!important;flex-wrap:wrap!important;margin-top:34px!important}
.an-callcard{margin:36px auto 0!important;width:100%!important;max-width:344px!important;background:rgba(12,10,11,.72);border:1px solid var(--an-line);border-radius:18px;padding:16px 20px 18px!important;backdrop-filter:blur(10px);box-shadow:0 24px 60px -24px rgba(0,0,0,.85)}
.an-cc-top{display:flex!important;align-items:center!important;gap:9px!important;width:100%!important}
.an-cc-live{width:9px!important;height:9px!important;min-width:9px;border-radius:50%;background:var(--an-orange);animation:an-ccpulse 1.8s infinite}
.an-cc-sub{margin-left:auto!important;width:auto!important}
.an-cc-wave{display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;height:36px!important;margin:14px 0 12px!important}
.an-wave-bar{display:block!important;width:4px!important;height:100%!important;border-radius:4px;background:var(--an-grad);transform:scaleY(.3);animation:an-ccbar 1s ease-in-out infinite}
.an-wave-2{animation-delay:.12s}.an-wave-3{animation-delay:.24s}.an-wave-4{animation-delay:.06s}.an-wave-5{animation-delay:.3s}.an-wave-6{animation-delay:.18s}.an-wave-7{animation-delay:.09s}.an-wave-8{animation-delay:.27s}.an-wave-9{animation-delay:.15s}
.an-demo-form{margin-top:2px!important;width:100%!important}
.an-demo-form .elementor-form-fields-wrapper{display:flex!important;gap:8px!important;flex-wrap:wrap!important}
.an-demo-form .elementor-field-group{margin:0!important;padding:0!important}
.an-demo-form .elementor-field-type-tel{flex:1 1 150px!important;min-width:0!important}
.an-demo-form .elementor-field-type-submit{flex:0 0 auto!important;width:auto!important;min-width:max-content!important}
.an-demo-form input{padding:11px 13px!important;min-height:0!important}
.an-demo-form button{padding:11px 15px!important;white-space:nowrap!important}
.an-demo-form input:focus{outline:none!important;border-color:var(--an-orange)!important;box-shadow:none!important}
.an-cc-note{margin-top:12px!important;transition:color .2s}
.an-cc-note.is-ok .elementor-widget-container{color:var(--an-orange)!important}
.an-hero-why{width:100%!important;max-width:none!important;margin:24px auto 0!important}
.an-hero-why .elementor-widget-container>p{max-width:56ch;margin-left:auto!important;margin-right:auto!important}
@keyframes an-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes an-ccpulse{0%,100%{box-shadow:0 0 0 0 rgba(228,77,39,.55)}70%{box-shadow:0 0 0 7px rgba(228,77,39,0)}}
@keyframes an-ccbar{0%,100%{transform:scaleY(.28)}50%{transform:scaleY(1)}}
@keyframes an-breathe{0%,100%{opacity:.4;transform:scale(1)}50%{opacity:.62;transform:scale(1.09)}}
.an-hero .an-wrap>*{animation:an-rise .7s cubic-bezier(.2,.7,.2,1) both}
.an-hero .an-hero-h1{animation-delay:.07s}.an-hero .an-hero-lede{animation-delay:.15s}.an-hero .an-hero-cta{animation-delay:.23s}.an-hero .an-callcard{animation-delay:.31s}.an-hero .an-hero-why{animation-delay:.39s}

/* Stats — source parity */
.an-proof-label{margin:clamp(40px,6vw,64px) 0 26px!important}
.an-stats{display:grid!important;grid-template-columns:repeat(6,1fr)!important;gap:1px!important;background:var(--an-line-2);border:1px solid var(--an-line-2);border-radius:18px;overflow:hidden}
.an-stat{background:var(--an-surface);padding:26px 14px!important;text-align:center;min-width:0}
.an-stat-label{margin-top:6px!important}

/* Shared section geometry — source parity */
.an-section{position:relative;padding:clamp(52px,8vw,96px) 0!important}
.an-section-tight{padding-top:0!important}
.an-section-head{text-align:center;align-items:center!important}
.an-sec-h{margin:14px 0 0!important}
.an-sec-sub{width:100%!important;max-width:none!important;margin:16px auto 0!important}
.an-sec-sub .elementor-widget-container>p{max-width:60ch;margin-left:auto!important;margin-right:auto!important}
.an-cards{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:16px!important;margin-top:44px!important}
.an-card{background:var(--an-card);border:1px solid var(--an-line);border-radius:16px;padding:24px 22px!important;transition:.2s;min-width:0}
.an-card:hover{border-color:rgba(228,77,39,.5);transform:translateY(-3px)}
.an-card-icon{width:42px!important;height:42px!important;display:grid!important;place-items:center!important;margin-bottom:16px!important;background:rgba(228,77,39,.12);border-radius:11px}
.an-card-icon .elementor-icon{display:flex}
.an-card-title{margin:0 0 7px!important}

/* Quote */
.an-quote{padding:clamp(48px,7vw,84px) 0!important;text-align:center}
.an-stat-big{margin-bottom:10px!important}
.an-quote-text{width:100%!important;max-width:none!important}
.an-quote-text .elementor-widget-container>blockquote{max-width:26ch;margin-left:auto!important;margin-right:auto!important}
.an-quote-sub{width:100%!important;max-width:none!important;margin:18px auto 0!important}
.an-quote-sub .elementor-widget-container>p{max-width:52ch;margin-left:auto!important;margin-right:auto!important}
.an-quote-attr{margin-top:20px!important}

/* Classic vs Anmari */
.an-split{display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px!important;margin-top:44px!important}
.an-col{border-radius:18px;padding:30px 28px!important;min-width:0}
.an-col-old{background:var(--an-surface);border:1px solid var(--an-line-2)}
.an-col-new{background:linear-gradient(160deg,rgba(226,49,37,.14),rgba(232,73,34,.05));border:1px solid rgba(228,77,39,.4)}
.an-col-title{margin:12px 0 18px!important}
.an-list-stack{display:flex!important;flex-direction:column!important;gap:12px!important}
.an-check-row{display:flex!important;gap:11px!important;align-items:flex-start!important;width:100%!important}
.an-check-icon{width:18px!important;min-width:18px!important;margin-top:2px!important}.an-check-icon .elementor-icon{display:flex}

/* DNA */
.an-dna{border-radius:22px;padding:clamp(30px,5vw,58px)!important;text-align:center;background:linear-gradient(160deg,rgba(226,49,37,.17),rgba(232,73,34,.04));border:1px solid rgba(228,77,39,.42)}
.an-dna-h{width:100%!important;max-width:none!important;margin:14px auto 0!important}
.an-dna-h .elementor-heading-title{display:block;max-width:20ch;margin-left:auto;margin-right:auto}
.an-dna-copy{width:100%!important;max-width:none!important;margin:20px auto 0!important}
.an-dna-copy .elementor-widget-container>p{max-width:66ch;margin-left:auto!important;margin-right:auto!important}
.an-dna-strip{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(118px,1fr))!important;gap:1px!important;background:var(--an-line);border:1px solid var(--an-line);border-radius:16px;overflow:hidden;margin-top:36px!important;width:100%!important}
.an-dna-stat{background:rgba(0,0,0,.34);padding:22px 12px!important;min-width:0}
.an-dna-label{margin-top:6px!important}
.an-dna-decision{width:100%!important;max-width:none!important;margin:26px auto 0!important}
.an-dna-decision .elementor-heading-title{display:block;max-width:54ch;margin-left:auto;margin-right:auto}
.an-dna-decision b{background:var(--an-grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Tasks */
.an-tasks{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:14px!important;margin-top:44px!important}
.an-task{display:flex!important;gap:12px!important;align-items:flex-start!important;background:var(--an-card);border:1px solid var(--an-line);border-radius:14px;padding:18px!important;min-width:0}
.an-task-icon{width:20px!important;min-width:20px!important;margin-top:1px!important}.an-task-icon .elementor-icon{display:flex}

/* Integrations */
.an-integ-section{padding-bottom:clamp(52px,8vw,96px)!important}
.an-integ{border:1px solid var(--an-line);border-radius:16px;background:var(--an-card);padding:26px 24px!important;text-align:center}
.an-integ-row{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:12px!important;margin-top:18px!important}
.an-chip{display:inline-flex!important;width:auto!important;align-items:center!important;gap:9px!important;padding:10px 17px!important;border-radius:999px;border:1px solid var(--an-line);background:var(--an-surface)}
.an-chip-dot{width:7px!important;height:7px!important;min-width:7px!important;border-radius:50%;background:var(--an-orange)}

/* Regions */
.an-regions{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:16px!important;margin-top:44px!important}
.an-region{background:var(--an-card);border:1px solid var(--an-line);border-radius:16px;padding:22px!important;overflow:hidden;min-width:0}
.an-region-name{margin-top:12px!important}.an-region-loc{margin-top:2px!important;min-height:2.6em}
.an-region-track{height:7px!important;border-radius:99px;background:rgba(255,255,255,.08);margin-top:16px!important;overflow:hidden}
.an-region-fill{height:100%!important;border-radius:99px;background:var(--an-grad)}
.an-region-fill-1{width:100%!important}.an-region-fill-2{width:65%!important}.an-region-fill-3{width:64%!important}.an-region-fill-4{width:58%!important}
.an-region-pct{margin-top:10px!important}.an-region-cap{margin-top:2px!important}.an-region-note{margin-top:18px!important;text-align:center}

/* Comparison table */
.an-table{margin-top:44px!important;border:1px solid var(--an-line);border-radius:18px;overflow:hidden}
.an-tr{display:grid!important;grid-template-columns:1.3fr 1fr 1fr!important;border-top:1px solid var(--an-line-2)}
.an-tr:first-child{border-top:0}
.an-th,.an-td{padding:16px 20px!important;min-width:0}
.an-th{background:var(--an-surface-2)}
.an-th.an-hi{background:linear-gradient(160deg,rgba(226,49,37,.22),rgba(232,73,34,.08))}
.an-table-check{width:17px!important;min-width:17px!important;margin-top:2px!important}.an-table-check .elementor-icon{display:flex}
.an-table-cell-row{display:flex!important;gap:8px!important;align-items:flex-start!important}

/* Authority — exactly grid, not flex */
.an-auth{background:var(--an-surface);border:1px solid var(--an-line);border-radius:22px;padding:clamp(28px,4vw,52px)!important;margin-top:16px!important;display:grid!important;grid-template-columns:auto 1fr!important;gap:clamp(24px,4vw,44px)!important;align-items:center!important}
.an-avatar{width:120px!important;height:120px!important;min-width:120px!important;border-radius:20px;background:linear-gradient(160deg,#2a1512,#0b0708);border:1px solid rgba(228,77,39,.5);display:grid!important;place-items:center!important}
.an-auth-copy{min-width:0}
.an-auth-title{margin:0 0 14px!important}
.an-auth-p{margin:0 0 10px!important}
.an-au-hi{background:linear-gradient(160deg,rgba(226,49,37,.13),rgba(232,73,34,.03));border-left:3px solid var(--an-orange);border-radius:0 12px 12px 0;padding:14px 18px!important;margin:16px 0 12px!important}
.an-auth-name-row{margin-top:16px!important}

/* Benefits */
.an-benefits{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:16px!important;margin-top:44px!important}
.an-ben{background:var(--an-card);border:1px solid var(--an-line);border-radius:16px;padding:24px!important;min-width:0}
.an-ben-title{margin:12px 0 7px!important}

/* Offer */
.an-offer{border-radius:24px;padding:clamp(28px,4vw,52px)!important;border:1px solid rgba(228,77,39,.42);background:linear-gradient(160deg,rgba(226,49,37,.16),rgba(232,73,34,.04))}
.an-offer-title{margin:12px 0 0!important}.an-offer-lead{margin:14px 0 0!important}
.an-offer-list{display:grid!important;gap:12px!important;margin:22px 0 0!important;max-width:640px}
.an-guarantee{margin-top:24px!important;display:flex!important;gap:14px!important;align-items:flex-start!important;background:rgba(0,0,0,.28);border:1px solid var(--an-line);border-radius:14px;padding:18px 20px!important}
.an-seal{width:44px!important;height:44px!important;min-width:44px!important;border-radius:50%;display:grid!important;place-items:center!important;background:rgba(228,77,39,.16)}
.an-seal-icon{width:22px!important}.an-seal-icon .elementor-icon{display:flex}.an-guarantee-title{margin:0 0 4px!important}
.an-offer-foot{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:18px!important;margin-top:26px!important}

/* FAQ */
.an-faq-list{width:100%!important;max-width:760px!important;margin:36px auto 0!important;display:flex!important;flex-direction:column!important;gap:12px!important}
.an-faq-item{background:var(--an-card);border:1px solid var(--an-line);border-radius:14px;padding:20px 22px!important}
.an-faq-q{margin:0 0 7px!important}

/* Final CTA */
.an-final-section{padding-bottom:0!important}
.an-final{position:relative;text-align:center;border-radius:26px;overflow:hidden;margin:clamp(40px,6vw,80px) 0 0!important;background:linear-gradient(150deg,rgba(226,49,37,.2),rgba(232,73,34,.06));border:1px solid rgba(228,77,39,.42);padding:clamp(40px,7vw,80px) clamp(20px,4vw,40px)!important}
.an-glow-final{width:520px!important;height:520px!important;background:radial-gradient(circle,rgba(226,49,37,.55),transparent 70%);top:-180px;right:-120px;opacity:.35}
.an-final-content{position:relative;z-index:1;align-items:center!important}
.an-final-title{width:100%!important;max-width:none!important}
.an-final-title .elementor-heading-title{display:block;max-width:18ch;margin-left:auto;margin-right:auto}
.an-final-copy{width:100%!important;max-width:none!important;margin:18px auto 0!important}
.an-final-copy .elementor-widget-container>p{max-width:52ch;margin-left:auto!important;margin-right:auto!important}

/* Partner recruiting */
.an-partner-section{padding:clamp(52px,8vw,96px) 0!important;scroll-margin-top:80px}
.an-partner{border-radius:24px;padding:clamp(30px,5vw,56px)!important;text-align:center;background:var(--an-surface);border:1px dashed rgba(228,77,39,.55)}
.an-partner-title{width:100%!important;max-width:none!important;margin:12px auto 0!important}
.an-partner-title .elementor-heading-title{display:block;max-width:20ch;margin-left:auto;margin-right:auto}
.an-partner-copy{width:100%!important;max-width:none!important;margin:16px auto 0!important}
.an-partner-copy .elementor-widget-container>p{max-width:60ch;margin-left:auto!important;margin-right:auto!important}
.an-partner-chips{display:flex!important;flex-wrap:wrap!important;gap:12px!important;justify-content:center!important;max-width:840px!important;margin:24px auto 0!important}
.an-partner-chip{display:flex!important;width:auto!important;gap:9px!important;align-items:center!important;background:var(--an-card);border:1px solid var(--an-line);border-radius:999px;padding:10px 16px!important}
.an-partner-chip-icon{width:18px!important;min-width:18px!important}.an-partner-chip-icon .elementor-icon{display:flex}
.an-partner>.elementor-widget-button{margin-top:26px!important}

/* Mobile sticky CTA */
.an-sticky{position:fixed!important;left:0;right:0;bottom:0;z-index:60;display:none!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:12px 16px!important;background:rgba(12,10,11,.94);backdrop-filter:blur(12px);border-top:1px solid var(--an-line)}
.an-sticky-text{max-width:none}

/* Footer */
.an-footer{background:var(--an-bg);color:var(--an-text);border-top:1px solid var(--an-line-2);padding:38px 0!important}
.an-footer-inner{gap:20px!important}
.an-footer-links{gap:22px!important}
.an-footer-link a{color:inherit;text-decoration:none}.an-footer-link a:hover{color:#fff}

:where(.an-page,.an-header,.an-footer) a:focus-visible,
:where(.an-page,.an-header,.an-footer) button:focus-visible,
:where(.an-page,.an-header,.an-footer) input:focus-visible{outline:2px solid var(--an-orange);outline-offset:3px;border-radius:4px}

@media(max-width:900px){
  .an-stats{grid-template-columns:repeat(3,1fr)!important}
  .an-cards,.an-regions{grid-template-columns:repeat(2,1fr)!important}
  .an-tasks{grid-template-columns:repeat(2,1fr)!important}
  .an-benefits{grid-template-columns:1fr 1fr!important}
  .an-split{grid-template-columns:1fr!important}
  .an-auth{grid-template-columns:1fr!important;text-align:center;justify-items:center!important}
  .an-au-hi{border-left:0;border-top:3px solid var(--an-orange);border-radius:0 0 12px 12px;text-align:left}
}
@media(max-width:560px){
  .an-stats{grid-template-columns:repeat(2,1fr)!important}
  .an-cards,.an-regions,.an-tasks,.an-benefits{grid-template-columns:1fr!important}
  .an-tr{grid-template-columns:1fr!important}
  .an-th:not(:first-child),.an-td.an-old{display:none!important}
  .an-nav-cta,.an-nav-partner{display:none!important}
  .an-sticky{display:flex!important}
  .an-page{padding-bottom:78px}
}
@media(prefers-reduced-motion:reduce){
  .an-page *,.an-header *,.an-footer *{scroll-behavior:auto!important;transition:none!important}
  .an-hero .an-wrap>*,.an-glow-a,.an-glow-b,.an-cc-live,.an-wave-bar{animation:none!important}
}

/* =========================================================
   V4 — exact call-card corrections for Elementor Containers
   ========================================================= */

/* Elementor containers/widgets carry their own width variables.
   Lock the call header pieces to the source HTML geometry. */
.an-callcard .an-cc-top {
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:9px!important;
}
.an-callcard .an-cc-live {
  --width:9px!important;
  --container-widget-width:9px!important;
  flex:0 0 9px!important;
  width:9px!important;
  min-width:9px!important;
  max-width:9px!important;
  height:9px!important;
  min-height:9px!important;
  max-height:9px!important;
  padding:0!important;
  margin:0!important;
}
.an-callcard .an-cc-name {
  --container-widget-width:auto!important;
  width:auto!important;
  max-width:max-content!important;
  flex:0 0 auto!important;
}
.an-callcard .an-cc-sub {
  --container-widget-width:auto!important;
  width:auto!important;
  max-width:max-content!important;
  flex:0 0 auto!important;
  margin-left:auto!important;
}

/* Source: .cc-wave i => 4px wide, 36px available height, animated scaleY. */
.an-callcard .an-cc-wave {
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  width:100%!important;
  height:36px!important;
  min-height:36px!important;
  margin:14px 0 12px!important;
  padding:0!important;
}
.an-callcard .an-wave-bar {
  --width:4px!important;
  --container-widget-width:4px!important;
  flex:0 0 4px!important;
  width:4px!important;
  min-width:4px!important;
  max-width:4px!important;
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  padding:0!important;
  margin:0!important;
  border-radius:4px!important;
  background:var(--an-grad)!important;
  transform:scaleY(.3);
  transform-origin:center;
  animation:an-ccbar 1s ease-in-out infinite;
}

/* Source form wraps because the input consumes the line and the CTA sits below. */
.an-callcard .an-demo-form .elementor-form-fields-wrapper {
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.an-callcard .an-demo-form .elementor-field-type-tel {
  flex:0 0 100%!important;
  width:100%!important;
  max-width:100%!important;
}
.an-callcard .an-demo-form .elementor-field-type-submit {
  flex:0 0 auto!important;
  width:auto!important;
  max-width:max-content!important;
  margin:0!important;
}
.an-callcard .an-demo-form .elementor-field-type-submit .elementor-button {
  width:auto!important;
  min-width:0!important;
  justify-content:center!important;
}


/* =========================================================
   V4 FINAL HARDENING — source HTML pixel parity
   Typography stays in Elementor widget controls.
   ========================================================= */

/* Eliminate Elementor-generated spacing/width behavior inside the isolated build. */
.an-page .elementor-element,
.an-header .elementor-element,
.an-footer .elementor-element{--widgets-spacing:0px 0px;}
.an-page .elementor-widget-container,
.an-header .elementor-widget-container,
.an-footer .elementor-widget-container{margin:0;}
.an-page .elementor-heading-title,
.an-header .elementor-heading-title,
.an-footer .elementor-heading-title{margin:0;}
.an-page .elementor-widget-text-editor p,
.an-page .elementor-widget-text-editor blockquote{margin-top:0;margin-bottom:0;}

/* Source .btn: border:0, exact inline-flex geometry. Ghost keeps its 1px border. */
.an-page .an-btn-primary .elementor-button,
.an-header .an-btn-primary .elementor-button,
.an-footer .an-btn-primary .elementor-button,
.an-callcard .an-demo-form .elementor-button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:9px!important;border:0!important;outline:0;min-height:0!important;
  box-sizing:border-box!important;
}
.an-page .an-btn-primary:not(.an-sticky-btn) .elementor-button{padding:12px 22px!important;}
.an-page .an-btn-ghost .elementor-button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  padding:12px 22px!important;border:1px solid var(--an-line)!important;min-height:0!important;box-sizing:border-box!important;
}
.an-header .an-nav-cta .elementor-button{padding:10px 18px!important;border:0!important;}
.an-sticky .an-btn-primary .elementor-button{padding:11px 16px!important;border:0!important;}

/* Call card: source width is 344px including border/padding. */
.an-callcard{box-sizing:border-box!important;}
.an-callcard>.e-con-inner{padding:0!important;margin:0!important;max-width:none!important;width:100%!important;}
.an-callcard .elementor-widget-form{width:100%!important;max-width:none!important;}
.an-callcard .an-demo-form form{width:100%!important;margin:0!important;}
.an-callcard .an-demo-form .elementor-form-fields-wrapper{margin:0!important;width:100%!important;}
.an-callcard .an-demo-form .elementor-field-group{padding:0!important;margin:0!important;}
.an-callcard .an-demo-form input.elementor-field{
  width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;
  padding:11px 13px!important;box-shadow:none!important;outline:none!important;
}
.an-callcard .an-demo-form .elementor-field-type-submit{padding:0!important;margin:0!important;}
.an-callcard .an-demo-form .elementor-button{padding:11px 15px!important;width:auto!important;min-width:0!important;}
.an-callcard .an-demo-form .elementor-button-content-wrapper{gap:0!important;}

/* Waveform: force every Elementor child container to behave like the source 4px <i>. */
.an-callcard .an-cc-wave>.an-wave-bar{
  --width:4px!important;--container-widget-width:4px!important;--flex-grow:0!important;--flex-shrink:0!important;
  flex:0 0 4px!important;width:4px!important;min-width:4px!important;max-width:4px!important;
  height:36px!important;min-height:36px!important;max-height:36px!important;
  padding:0!important;margin:0!important;overflow:visible!important;
}
.an-callcard .an-wave-bar>.e-con-inner{display:none!important;}

/* Exact SVGs from the supplied HTML. We hide Font Awesome glyphs and use the source paths as masks. */
.an-svg-icon .elementor-icon{font-size:0!important;line-height:0!important;display:block!important;}
.an-svg-icon .elementor-icon>i,
.an-svg-icon .elementor-icon>svg{display:none!important;}
.an-svg-icon .elementor-icon::before{
  content:"";display:block;width:100%;height:100%;background:currentColor;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center;
  -webkit-mask-size:contain;mask-size:contain;
}
.an-svg-spark .elementor-icon{width:15px!important;height:15px!important;color:var(--an-orange)!important;}
.an-svg-spark .elementor-icon::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2l1.6 6.4L20 10l-6.4 1.6L12 18l-1.6-6.4L4 10l6.4-1.6z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2l1.6 6.4L20 10l-6.4 1.6L12 18l-1.6-6.4L4 10l6.4-1.6z'/%3E%3C/svg%3E");}
.an-card-icon .elementor-icon{width:22px!important;height:22px!important;color:var(--an-orange)!important;}
.an-svg-phone .elementor-icon::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M15.5 5.5a5 5 0 0 1 3 3M3 5c0 8.3 6.7 15 15 15l2.5-3.5-4-2-2 1.5a11 11 0 0 1-5.5-5.5l1.5-2-2-4z'/%3E%3Cline x1='22' y1='2' x2='16' y2='8'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M15.5 5.5a5 5 0 0 1 3 3M3 5c0 8.3 6.7 15 15 15l2.5-3.5-4-2-2 1.5a11 11 0 0 1-5.5-5.5l1.5-2-2-4z'/%3E%3Cline x1='22' y1='2' x2='16' y2='8'/%3E%3C/svg%3E");}
.an-svg-globe .elementor-icon::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a15 15 0 0 1 0 18M12 3a15 15 0 0 0 0 18'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a15 15 0 0 1 0 18M12 3a15 15 0 0 0 0 18'/%3E%3C/svg%3E");}
.an-svg-calendar .elementor-icon::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E");}
.an-svg-clock .elementor-icon::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");}
.an-svg-check .elementor-icon::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");}
.an-svg-x .elementor-icon::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E");}
.an-svg-shield .elementor-icon::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M12 3l7 3v5c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M12 3l7 3v5c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");}
.an-check-icon .elementor-icon{width:18px!important;height:18px!important;}
.an-task-icon .elementor-icon{width:20px!important;height:20px!important;color:var(--an-orange)!important;}
.an-table-check .elementor-icon{width:17px!important;height:17px!important;color:var(--an-orange)!important;}
.an-seal-icon .elementor-icon{width:22px!important;height:22px!important;color:var(--an-orange)!important;}
.an-partner-chip-icon .elementor-icon{width:18px!important;height:18px!important;color:var(--an-orange)!important;}
.an-old .an-svg-x .elementor-icon{color:var(--an-faint)!important;}
.an-new .an-svg-check .elementor-icon{color:var(--an-orange)!important;}

/* Do not let Elementor truncate the long market stat. Source HTML relies on its font metrics. */
.an-stat-value .elementor-heading-title{white-space:nowrap;}

/* Preserve exact source mobile breakpoints. */
@media(max-width:560px){
  .an-callcard .an-demo-form .elementor-field-type-tel{flex:1 1 150px!important;width:auto!important;max-width:none!important;}
  .an-callcard .an-demo-form .elementor-field-type-submit{flex:0 0 auto!important;width:auto!important;max-width:max-content!important;}
}
