.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-8ac823f *//* ============================================================
   ASORT FOOTER  —  asort-footer.css
   All rules scoped under  .asf__root
   Zero conflict with Elementor / WordPress / any other CSS
   ============================================================ */

/* Google Fonts import */
@import url('https://fonts.googleapis.com/css2?family=Syne:wght@700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&display=swap');

/* ── CSS CUSTOM PROPERTIES (scoped) ─────────────────────── */
.asf__root {
  --asf-orange:     #FF6A00;
  --asf-orange-lt:  #FF9040;
  --asf-dark:       #0D0D0D;
  --asf-card:       #161616;
  --asf-border:     rgba(255,255,255,.08);
  --asf-muted:      #777;
  --asf-text:       #bbb;
  --asf-white:      #ffffff;
  --asf-radius:     10px;
  --asf-head:       'Syne', sans-serif;
  --asf-body:       'DM Sans', sans-serif;
}

/* ── ROOT RESET (scoped — does NOT leak out) ─────────────── */
.asf__root,
.asf__root *,
.asf__root *::before,
.asf__root *::after {
  box-sizing: border-box !important;
  margin: 0;
  padding: 0;
}

.asf__root {
  background: var(--asf-dark) !important;
  color: var(--asf-text) !important;
  font-family: var(--asf-body) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  -webkit-font-smoothing: antialiased;
  /* ── Full bleed breakout: works inside any Elementor container ── */
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  box-sizing: border-box !important;
  overflow-x: hidden !important;
}

/* Ensure Elementor doesn't strip display from our elements */
.asf__root a {
  text-decoration: none !important;
  color: inherit;
}
.asf__root ul { list-style: none !important; }
.asf__root img { display: block; max-width: 100%; }
.asf__root button { cursor: pointer; font-family: var(--asf-body); }

/* ── BACK TO TOP BUTTON ──────────────────────────────────── */
.asf__btt {
  position: fixed !important;
  bottom: 24px !important;
  right: 24px !important;
  z-index: 99999 !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: var(--asf-orange) !important;
  border: none !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 6px 24px rgba(255,106,0,.45) !important;
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s, transform .3s !important;
}
.asf__btt.asf--visible { opacity: 1 !important; pointer-events: auto !important; }
.asf__btt:hover { transform: translateY(-3px) !important; }
.asf__btt svg { width: 18px; height: 18px; display: block; }

/* ── STATS STRIP ─────────────────────────────────────────── */
.asf__stats {
  display: flex !important;
  flex-wrap: wrap !important;
  border-bottom: 1px solid var(--asf-border) !important;
  background: var(--asf-card) !important;
  overflow: hidden !important;
}

.asf__stat {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 22px 12px !important;
  border-right: 1px solid var(--asf-border) !important;
  text-align: center !important;
}
.asf__stat:last-child { border-right: none !important; }

.asf__stat strong {
  font-family: var(--asf-head) !important;
  font-size: clamp(1.25rem, 3vw, 1.75rem) !important;
  font-weight: 800 !important;
  background: linear-gradient(135deg, var(--asf-orange), var(--asf-orange-lt)) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  line-height: 1.1 !important;
  display: block !important;
}

.asf__stat span {
  font-size: 10px !important;
  color: var(--asf-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  margin-top: 5px !important;
  display: block !important;
}

/* ── TOP SECTION ─────────────────────────────────────────── */
.asf__top {
  display: grid !important;
  grid-template-columns: 1.6fr 1fr 1fr !important;
  gap: 48px !important;
  padding: 52px 3% 40px !important;
  border-bottom: 1px solid var(--asf-border) !important;
}

/* Brand */
.asf__tagline {
  font-size: 10px !important;
  color: var(--asf-orange) !important;
  text-transform: uppercase !important;
  letter-spacing: .18em !important;
  font-weight: 600 !important;
  margin-bottom: 10px !important;
  display: block !important;
}

.asf__logo {
  font-family: var(--asf-head) !important;
  font-size: clamp(1.8rem, 4vw, 2.4rem) !important;
  font-weight: 800 !important;
  color: var(--asf-white) !important;
  letter-spacing: -.02em !important;
  margin-bottom: 14px !important;
  display: block !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
}
.asf__logo span {
  background: linear-gradient(135deg, var(--asf-orange), var(--asf-orange-lt)) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

.asf__desc {
  color: var(--asf-muted) !important;
  font-size: 13px !important;
  line-height: 1.75 !important;
  margin-bottom: 22px !important;
}

/* Social icons */
.asf__social {
  display: flex !important;
  gap: 9px !important;
  flex-wrap: wrap !important;
}
.asf__social a {
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  border: 1px solid var(--asf-border) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--asf-muted) !important;
  transition: all .25s !important;
  -webkit-text-fill-color: initial !important;
}
.asf__social a:hover {
  border-color: var(--asf-orange) !important;
  color: var(--asf-orange) !important;
  background: rgba(255,106,0,.1) !important;
  transform: translateY(-2px) !important;
}

/* App badges column */
.asf__col-label {
  font-size: 10px !important;
  color: var(--asf-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  font-weight: 600 !important;
  margin-bottom: 14px !important;
  display: block !important;
}

.asf__badges {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.asf__badge {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  background: rgba(255,255,255,.04) !important;
  border: 1px solid var(--asf-border) !important;
  border-radius: var(--asf-radius) !important;
  padding: 11px 16px !important;
  color: var(--asf-white) !important;
  transition: all .25s !important;
  text-decoration: none !important;
  -webkit-text-fill-color: initial !important;
}
.asf__badge:hover {
  border-color: var(--asf-orange) !important;
  background: rgba(255,106,0,.08) !important;
  transform: translateX(3px) !important;
}
.asf__badge-icon {
  font-size: 22px !important;
  flex-shrink: 0 !important;
  line-height: 1 !important;
}
.asf__badge-text {
  display: flex !important;
  flex-direction: column !important;
  gap: 1px !important;
}
.asf__badge-text small {
  font-size: 9px !important;
  color: var(--asf-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  display: block !important;
}
.asf__badge-text strong {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--asf-white) !important;
  display: block !important;
  -webkit-text-fill-color: var(--asf-white) !important;
  background: none !important;
}

/* Newsletter */
.asf__newsletter {
  margin-top: 26px !important;
  padding-top: 22px !important;
  border-top: 1px solid var(--asf-border) !important;
}

.asf__newsletter-row {
  display: flex !important;
  gap: 8px !important;
}

.asf__input {
  flex: 1 !important;
  background: rgba(255,255,255,.05) !important;
  border: 1px solid var(--asf-border) !important;
  border-radius: var(--asf-radius) !important;
  padding: 10px 13px !important;
  color: var(--asf-white) !important;
  font-size: 13px !important;
  font-family: var(--asf-body) !important;
  outline: none !important;
  transition: border .2s !important;
  min-width: 0 !important;
}
.asf__input:focus { border-color: var(--asf-orange) !important; }
.asf__input::placeholder { color: var(--asf-muted) !important; }

.asf__sub-btn {
  background: var(--asf-orange) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--asf-radius) !important;
  padding: 10px 16px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  white-space: nowrap !important;
  transition: opacity .2s !important;
  font-family: var(--asf-body) !important;
}
.asf__sub-btn:hover { opacity: .85 !important; }

/* Contact column */
.asf__contact-label {
  font-family: var(--asf-head) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--asf-orange) !important;
  text-transform: uppercase !important;
  letter-spacing: .15em !important;
  margin-bottom: 18px !important;
  display: block !important;
  -webkit-text-fill-color: var(--asf-orange) !important;
  background: none !important;
}

.asf__contact p {
  margin-bottom: 9px !important;
  color: var(--asf-muted) !important;
  font-size: 13px !important;
}
.asf__contact a {
  color: var(--asf-text) !important;
  transition: color .2s !important;
  -webkit-text-fill-color: var(--asf-text) !important;
}
.asf__contact a:hover { color: var(--asf-orange) !important; -webkit-text-fill-color: var(--asf-orange) !important; }

.asf__care-btn {
  display: inline-block !important;
  margin-top: 14px !important;
  background: rgba(255,106,0,.1) !important;
  border: 1px solid rgba(255,106,0,.3) !important;
  color: var(--asf-orange) !important;
  padding: 9px 18px !important;
  border-radius: 20px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  transition: all .2s !important;
  -webkit-text-fill-color: var(--asf-orange) !important;
}
.asf__care-btn:hover {
  background: var(--asf-orange) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* ── LINK COLUMNS ────────────────────────────────────────── */
.asf__main {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 36px 24px !important;
  padding: 48px 3% 42px !important;
  border-bottom: 1px solid var(--asf-border) !important;
}

.asf__col h4 {
  font-family: var(--asf-head) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  color: var(--asf-white) !important;
  margin-bottom: 16px !important;
  padding-bottom: 10px !important;
  border-bottom: 2px solid var(--asf-orange) !important;
  display: inline-block !important;
  -webkit-text-fill-color: var(--asf-white) !important;
  background: none !important;
}

.asf__col ul li { margin-bottom: 8px !important; }

.asf__col ul li a {
  color: var(--asf-muted) !important;
  font-size: 13px !important;
  transition: all .2s !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  -webkit-text-fill-color: var(--asf-muted) !important;
}
.asf__col ul li a::before {
  content: '›' !important;
  color: var(--asf-orange) !important;
  opacity: 0 !important;
  transform: translateX(-5px) !important;
  transition: all .2s !important;
  font-size: 15px !important;
  -webkit-text-fill-color: var(--asf-orange) !important;
}
.asf__col ul li a:hover {
  color: var(--asf-white) !important;
  -webkit-text-fill-color: var(--asf-white) !important;
  padding-left: 4px !important;
}
.asf__col ul li a:hover::before {
  opacity: 1 !important;
  transform: translateX(0) !important;
}

/* ── TAG CLOUD ───────────────────────────────────────────── */
.asf__tags-section {
  padding: 32px 3% !important;
  border-bottom: 1px solid var(--asf-border) !important;
}

.asf__tags-title {
  font-size: 10px !important;
  color: var(--asf-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: .15em !important;
  font-weight: 600 !important;
  margin-bottom: 14px !important;
  display: block !important;
}

.asf__tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
}

.asf__tag {
  padding: 6px 13px !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.04) !important;
  border: 1px solid var(--asf-border) !important;
  color: var(--asf-muted) !important;
  font-size: 12px !important;
  transition: all .2s !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  -webkit-text-fill-color: var(--asf-muted) !important;
}
.asf__tag:hover,
.asf__tag.asf--active {
  background: rgba(255,106,0,.12) !important;
  border-color: var(--asf-orange) !important;
  color: var(--asf-orange) !important;
  -webkit-text-fill-color: var(--asf-orange) !important;
}

/* ── TRUST STRIP ─────────────────────────────────────────── */
.asf__strip {
  background: var(--asf-card) !important;
  border-bottom: 1px solid var(--asf-border) !important;
  padding: 18px 3% !important;
}

.asf__badges-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-bottom: 10px !important;
}

.asf__trust {
  font-size: 11.5px !important;
  color: var(--asf-text) !important;
  background: rgba(255,106,0,.07) !important;
  border: 1px solid rgba(255,106,0,.2) !important;
  border-radius: 20px !important;
  padding: 5px 13px !important;
  white-space: nowrap !important;
  -webkit-text-fill-color: var(--asf-text) !important;
}

.asf__strip-note {
  font-size: 11px !important;
  color: var(--asf-muted) !important;
}

/* ── BOTTOM BAR ──────────────────────────────────────────── */
.asf__bottom {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  padding: 18px 3% !important;
  background: #080808 !important;
}

.asf__bottom p {
  font-size: 12px !important;
  color: var(--asf-muted) !important;
}

.asf__bottom-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 5px 16px !important;
}
.asf__bottom-links a {
  font-size: 11.5px !important;
  color: var(--asf-muted) !important;
  transition: color .2s !important;
  -webkit-text-fill-color: var(--asf-muted) !important;
}
.asf__bottom-links a:hover {
  color: var(--asf-orange) !important;
  -webkit-text-fill-color: var(--asf-orange) !important;
}

/* ── SCROLL REVEAL ───────────────────────────────────────── */
.asf__anim {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity .55s ease, transform .55s ease;
}
.asf__anim.asf--show { opacity: 1 !important; transform: none !important; }

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — TABLET  (≤ 900px)
   ═══════════════════════════════════════════════════════════ */
@media screen and (max-width: 900px) {

  /* Stats — 3 per row on tablet */
  .asf__stat {
    flex: 1 1 calc(33.33% - 2px) !important;
    max-width: calc(33.33% - 2px) !important;
    padding: 18px 10px !important;
    border-right: 1px solid var(--asf-border) !important;
  }
  .asf__stat:nth-child(3) { border-right: none !important; }
  .asf__stat:nth-child(4) { border-top: 1px solid var(--asf-border) !important; }
  .asf__stat:nth-child(5) { border-top: 1px solid var(--asf-border) !important; }
  .asf__stat:nth-child(6) {
    border-right: none !important;
    border-top: 1px solid var(--asf-border) !important;
  }

  /* Top: 2-col then contact below */
  .asf__top {
    grid-template-columns: 1fr 1fr !important;
    gap: 32px !important;
  }
  /* Contact column goes full width on its own row */
  .asf__contact {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 24px !important;
    align-items: start !important;
  }
  .asf__contact .asf__care-btn { margin-top: 10px !important; }

  /* Link columns: 3 per row */
  .asf__main {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — MOBILE  (≤ 600px)
   ═══════════════════════════════════════════════════════════ */
@media screen and (max-width: 600px) {

  /* ── Stats strip: 3×2 grid ── */
  .asf__stats {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
  }
  .asf__stat {
    flex: none !important;
    max-width: 100% !important;
    padding: 14px 8px !important;
    border-right: 1px solid var(--asf-border) !important;
    border-top: none !important;
  }
  .asf__stat:nth-child(3n) { border-right: none !important; }
  .asf__stat:nth-child(n+4) { border-top: 1px solid var(--asf-border) !important; }
  /* Reset tablet overrides */
  .asf__stat:nth-child(3) { border-right: none !important; }
  .asf__stat:nth-child(4),
  .asf__stat:nth-child(5),
  .asf__stat:nth-child(6) { border-top: 1px solid var(--asf-border) !important; }

  .asf__stat strong {
    font-size: clamp(1rem, 5vw, 1.3rem) !important;
  }
  .asf__stat span {
    font-size: 9px !important;
    letter-spacing: .04em !important;
  }

  /* ── Top section: single column ── */
  .asf__top {
    grid-template-columns: 1fr !important;
    padding: 28px 4% 24px !important;
    gap: 28px !important;
  }

  /* Reset contact grid from tablet */
  .asf__contact {
    grid-column: auto !important;
    display: block !important;
  }

  /* Brand / logo */
  .asf__logo {
    font-size: clamp(1.6rem, 7vw, 2rem) !important;
    margin-bottom: 10px !important;
  }
  .asf__desc {
    font-size: 12.5px !important;
    line-height: 1.65 !important;
    margin-bottom: 16px !important;
  }
  .asf__social { gap: 7px !important; }
  .asf__social a { width: 34px !important; height: 34px !important; }

  /* ── App badges: side by side ── */
  .asf__badges {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }
  .asf__badge {
    flex: 1 1 calc(50% - 4px) !important;
    min-width: 130px !important;
    padding: 9px 12px !important;
  }
  .asf__badge-icon { font-size: 18px !important; }
  .asf__badge-text small { font-size: 8px !important; }
  .asf__badge-text strong { font-size: 12px !important; }

  /* ── Newsletter ── */
  .asf__newsletter { margin-top: 20px !important; padding-top: 18px !important; }
  .asf__newsletter-row {
    display: flex !important;
    flex-direction: row !important;
    gap: 6px !important;
  }
  .asf__input { font-size: 12px !important; padding: 9px 11px !important; }
  .asf__sub-btn { padding: 9px 13px !important; font-size: 11px !important; }

  /* ── Contact ── */
  .asf__contact p { font-size: 12.5px !important; margin-bottom: 8px !important; }
  .asf__care-btn { font-size: 11px !important; padding: 8px 15px !important; }

  /* ── Link columns: 2 per row ── */
  .asf__main {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px 16px !important;
    padding: 28px 4% 26px !important;
  }
  .asf__col h4 { font-size: 10px !important; margin-bottom: 12px !important; }
  .asf__col ul li { margin-bottom: 6px !important; }
  .asf__col ul li a { font-size: 12.5px !important; }

  /* ── Tags ── */
  .asf__tags-section { padding: 20px 4% !important; }
  .asf__tag { font-size: 11px !important; padding: 5px 11px !important; }

  /* ── Trust strip ── */
  .asf__strip { padding: 14px 4% !important; }
  .asf__badges-row { gap: 6px !important; }
  .asf__trust { font-size: 10.5px !important; padding: 4px 10px !important; }
  .asf__strip-note { font-size: 10px !important; margin-top: 8px !important; }

  /* ── Bottom bar ── */
  .asf__bottom {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 16px 4% !important;
  }
  .asf__bottom p { font-size: 11px !important; }
  .asf__bottom-links {
    gap: 6px 12px !important;
    flex-wrap: wrap !important;
  }
  .asf__bottom-links a { font-size: 11px !important; }

  /* ── Back to top ── */
  .asf__btt {
    bottom: 16px !important;
    right: 16px !important;
    width: 40px !important;
    height: 40px !important;
  }
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — SMALL MOBILE  (≤ 400px)
   ═══════════════════════════════════════════════════════════ */
@media screen and (max-width: 400px) {

  /* Stats: 2×3 on very small screens */
  .asf__stats {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .asf__stat:nth-child(3n) { border-right: 1px solid var(--asf-border) !important; }
  .asf__stat:nth-child(2n) { border-right: none !important; }
  .asf__stat:nth-child(n+3) { border-top: 1px solid var(--asf-border) !important; }
  .asf__stat:nth-child(n+4) { border-top: 1px solid var(--asf-border) !important; }

  /* App badges: stack on very small */
  .asf__badge { flex: 1 1 100% !important; }

  /* Link columns: 2 per row (keep) */
  .asf__main { grid-template-columns: 1fr 1fr !important; gap: 20px 12px !important; }

  /* Logo smaller */
  .asf__logo { font-size: 1.5rem !important; }
}/* End custom CSS */