﻿/*
 * main.css — local custom-style layer
 * -------------------------------------------------
 * This project mirrors a Webflow-built page. Practically all visual
 * styling — layout, typography, color, spacing, borders, shadows,
 * gradients, grid/flex rules, and every responsive breakpoint — already
 * lives in the original compiled stylesheet at:
 *   css/vendor/webflow-shared.min.css
 *
 * That file is Webflow's own production CSS export and is kept intact
 * (with every url() rewritten to local assets/) so the page matches the
 * source as closely as technically possible. Re-authoring it by hand
 * would only risk drifting from the real design.
 *
 * This file is loaded *after* the vendor stylesheet, so it is the place
 * to add your own overrides or fixes without touching the vendor file.
 */

/* Homepage theme — eCount blue */
html.ecount-blue-theme {
  --purple: #0073BC;
  --_agents---agent-03: #0073BC;
  --light: #e8f4fb;
  --intelligent-blue: #7eb8dc;
  --wm-contrast: #005a94;
  --bright-purple: #2b8fd0;
  --status-purple: #0073BC;
  --elements-webflow-library--accent--primary-1: #0073BC;
  --elements-webflow-library--secondary--color-1: #005a94;
  --elements-webflow-library--secondary--color-2: #e8f4fb;
  --flowui-component-library--primary-base: #0073BC;
  --flowui-component-library--primary-lighter: #e8f4fb;
}

html.ecount-blue-theme .primary-button-10,
html.ecount-blue-theme .shared-lib--primary-button-10,
html.ecount-blue-theme .m_button-28.m_button-primary {
  background-color: #0073BC;
  border-color: #0073BC;
}

html.ecount-blue-theme .primary-button-10:hover,
html.ecount-blue-theme .shared-lib--primary-button-10:hover {
  background-color: #005a94;
}

html.ecount-blue-theme .primary-button-10._w-arrow.in-nav,
html.ecount-blue-theme .shared-lib--primary-button-10.shared-lib--w-arrow.shared-lib--in-nav {
  border-color: #0073BC;
}

html.ecount-blue-theme .is-purple,
html.ecount-blue-theme .hp-agents-tabs_span.is-purple {
  color: #0073BC;
}

html.ecount-blue-theme .hero_test-tabs-menu-link.is-tag.is-active {
  color: #0073BC;
  background-color: #d4eaf6;
}

html.ecount-blue-theme .hp-agents_section-customers .hp-agents_splide-card.is-purple {
  background-color: #0073BC;
}

html.ecount-blue-theme .hp-agents_section-customers .hp-agents_splide-card.is-purple .pinkish-span {
  color: #d4eaf6;
}

/* eCount wordmark — keep header/footer logos at consistent logo size */
.m_header-logo-desktop img,
.footer-logo-link img,
.dt-footer-logo {
  max-height: 32px;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* Products mega-menu — boxed 4×3 grid with illustration in leftover cells */
.group_nav-full-child.is-new.ecount-products-dropdown {
  max-width: min(1180px, 94vw);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.12);
}

.group-nav-content-top.is-new.ecount-products-panel {
  display: block;
  height: auto;
  padding: 1.75rem 1.5rem;
  background: linear-gradient(180deg, #f5f7f9 0%, #ffffff 72%);
}

.ecount-products-dropdown .ecount-products-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  gap: 1rem;
}

.ecount-products-dropdown .ecount-products-banner {
  grid-column: 4;
  grid-row: 2 / span 2;
  position: relative;
  display: block;
  min-height: 0;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  text-decoration: none;
}

.ecount-products-dropdown .ecount-products-banner img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
  pointer-events: none;
  filter: drop-shadow(0 12px 18px rgba(15, 55, 95, 0.12));
  transition: transform 0.35s ease;
}

.ecount-products-dropdown .ecount-products-banner:hover {
  border: 0;
  box-shadow: none;
  background: none;
}

.ecount-products-dropdown .ecount-products-banner:hover img {
  transform: translateY(-4px);
}

.ecount-products-grid a.ecount-product-card,
.ecount-products-grid a.ecount-product-card:link,
.ecount-products-grid a.ecount-product-card:visited,
.ecount-products-grid a.ecount-product-card:hover,
.ecount-products-grid a.ecount-product-card:active {
  --card-tint: #eef2f6;
  --card-accent: #3d5a73;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.7rem;
  width: 100%;
  height: 100%;
  min-height: 118px;
  padding: 1.3rem 1.05rem 1.05rem;
  border: 1px solid rgba(30, 58, 95, 0.08);
  border-radius: 14px;
  background: linear-gradient(160deg, var(--card-tint) 0%, #ffffff 58%);
  text-decoration: none;
  color: #222;
  box-sizing: border-box;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 1px 2px rgba(15, 40, 70, 0.04);
  transform: none;
  isolation: isolate;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.ecount-products-grid a.ecount-product-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 1.1rem;
  right: 1.1rem;
  height: 3px;
  border-radius: 0 0 4px 4px;
  background: var(--card-accent);
  opacity: 0.72;
}

.ecount-products-grid a.ecount-product-card::after {
  content: "";
  position: absolute;
  top: -28px;
  right: -24px;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  background: var(--card-accent);
  opacity: 0.08;
  pointer-events: none;
  z-index: -1;
}

.ecount-products-grid a.ecount-product-card:hover {
  transform: translateY(-3px);
  border-color: rgba(30, 58, 95, 0.16);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    0 12px 26px rgba(15, 40, 70, 0.1);
}

.ecount-products-grid a.ecount-product-card:hover::after {
  opacity: 0.14;
}

.ecount-products-grid a.ecount-product-card.is-book {
  --card-tint: #f6eee6;
  --card-accent: #c56a32;
}

.ecount-products-grid a.ecount-product-card.is-erp {
  --card-tint: #f6f0de;
  --card-accent: #c49a1e;
}

.ecount-products-grid a.ecount-product-card.is-fleet {
  --card-tint: #f6ebe8;
  --card-accent: #c24d42;
}

.ecount-products-grid a.ecount-product-card.is-tms {
  --card-tint: #e6f0f6;
  --card-accent: #3a7ca8;
}

.ecount-products-grid a.ecount-product-card.is-factory {
  --card-tint: #eef1e3;
  --card-accent: #6a7a3a;
}

.ecount-products-grid a.ecount-product-card.is-hr {
  --card-tint: #e7eef6;
  --card-accent: #3b6a9a;
}

.ecount-products-grid a.ecount-product-card.is-crm {
  --card-tint: #ebf1f5;
  --card-accent: #5a798d;
}

.ecount-products-grid a.ecount-product-card.is-order {
  --card-tint: #e5f1ee;
  --card-accent: #2f6e62;
}

.ecount-products-grid a.ecount-product-card.is-driver {
  --card-tint: #e7eef4;
  --card-accent: #1e3a5f;
}

.ecount-products-grid a.ecount-product-card.is-customer {
  --card-tint: #e6f0eb;
  --card-accent: #2d6a58;
}

.ecount-product-icon {
  display: flex;
  align-items: center;
  height: 34px;
}

.ecount-product-icon img {
  display: block;
  height: 34px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: left center;
}

.ecount-product-desc {
  margin: 0;
  max-width: none;
  font-size: 12.5px;
  line-height: 1.45;
  font-weight: 400;
  color: #6b7280;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media (max-width: 900px) {
  .ecount-products-grid:not(.is-mobile) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ecount-products-banner {
    grid-column: 1 / -1;
    grid-row: auto;
    min-height: 200px;
  }
}

.ecount-products-grid.is-mobile {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.65rem;
  padding: 0.25rem 0 1.5rem;
}

/* Solutions / Resources / Company lists — keep Products mega-menu height rules intact */
.group_nav-full-child.is-new:not(.ecount-products-dropdown) .group-nav-content-top.is-new {
  height: auto;
  min-height: 0;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.group_nav-full-child.is-new.ecount-company-dropdown {
  max-width: 22rem;
}

.group_nav-full-child.is-new:not(.ecount-products-dropdown) .group_nav-col-parent.is-new:last-child {
  border-right: none;
}

.ecount-product-icon.is-composed {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  height: 34px;
  min-height: 34px;
}

.ecount-product-glyph {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
}

.ecount-product-wordmark {
  display: flex;
  flex-direction: column;
  line-height: 1.05;
  color: #222;
}

.ecount-product-brand {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.01em;
}

.ecount-product-brand sup {
  font-size: 0.6em;
  top: -0.45em;
}

.ecount-product-name {
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.01em;
  text-transform: uppercase;
}

/* Accordion: closed = product icon, open = full logo */
.apl-acc-h .acc-product-icon,
.agent-b_tab-h-wrap .acc-product-icon-mb {
  display: block;
  width: 28px;
  height: 28px;
  margin-right: 0.75rem;
  object-fit: contain;
  flex-shrink: 0;
}

.apl-acc-h .acc-product-logo,
.agent-b_tab-h-wrap .acc-product-logo-mb {
  display: none;
  width: auto;
  height: 36px;
  max-width: 200px;
  margin-right: 0.75rem;
  object-fit: contain;
  object-position: left center;
  flex-shrink: 0;
}

[data-accordion-item].is-open .apl-acc-h .acc-product-icon,
[data-accordion-item].is-open .acc-product-icon-mb {
  display: none;
}

[data-accordion-item].is-open .apl-acc-h .acc-product-logo,
[data-accordion-item].is-open .acc-product-logo-mb {
  display: block;
}

[data-accordion-item].is-open .acc-product-title,
[data-accordion-item].is-open .agents-hp-acc-mb-title {
  display: none;
}

.agent-b_tab-h-wrap:has(.acc-product-icon-mb) {
  justify-content: flex-start;
  gap: 0.75rem;
}

.agent-b_tab-h-wrap .acc-product-icon-mb,
.agent-b_tab-h-wrap .acc-product-logo-mb {
  margin-right: 0;
}

.integ-badge.product-card-icon {
  height: 2.5rem;
  width: auto;
  max-width: 2.75rem;
  object-fit: contain;
  margin-right: 0;
}

/* Real companies — stacked cards, same size for short and long quotes */
.hp-agents_section-customers .splide__slide.hp-agents_slide {
  width: 26rem !important;
  max-width: 26rem !important;
  height: 32rem !important;
  box-sizing: border-box;
}

.hp-agents_section-customers .hp-agents_splide-card {
  flex-direction: column;
  width: 100%;
  height: 85% !important;
  min-height: 0;
  box-sizing: border-box;
  overflow: hidden;
}

.hp-agents_section-customers .hp-agents_splide-image-wrapper,
.hp-agents_section-customers .hp-agents_splide-image-wrapper.is-sq {
  order: -1;
  width: 100%;
  height: 11.5rem;
  flex: 0 0 11.5rem;
  background: #f3f4f5;
  display: flex;
  justify-content: center;
  border-radius: 1rem;
}

.hp-agents_section-customers .hp-agents_splide-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hp-agents_section-customers .hp-agents_splide-image.is-software {
  object-fit: contain;
  object-position: center;
  width: 55%;
}

.hp-agents_section-customers .hp-agents_splide-content {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  flex: 1;
  height: auto;
  padding: 0.9rem 1.1rem 1.1rem;
  overflow: hidden;
}

.hp-agents_section-customers .hp-agents_splide-content-bottom {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  flex: 1;
  overflow: hidden;
}

.hp-agents_section-customers .icon-embed-custom-3 {
  display: none;
}

.hp-agents_section-customers .hp-agents_splide-par {
  max-width: none;
  margin-top: 0.4rem;
  margin-bottom: 0.6rem;
  font-size: 0.95rem;
  line-height: 1.45;
  display: block;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  -webkit-line-clamp: unset;
}

.hp-agents_section-customers .hp-agents_splide-par::-webkit-scrollbar {
  width: 4px;
}

.hp-agents_section-customers .hp-agents_splide-par::-webkit-scrollbar-thumb {
  background: rgba(127, 127, 127, 0.35);
  border-radius: 4px;
}

.hp-agents_section-customers .hp-agents_splide-quote-name {
  margin-top: auto;
  font-size: 0.8125rem;
  line-height: 1.35;
  white-space: normal;
  flex: 0 0 auto;
  opacity: 0.85;
}

.hp-agents_section-customers .hp-agents_splide-large-text {
  font-size: 3rem;
}

.hp-agents_section-customers .hp-agents_splide-tagline {
  flex: 0 0 auto;
}

.hp-agents_section-customers .pinkish-span {
  color: #1b5f73;
}

.hp-agents_section-customers .hp-agents_splide-card.is-pink {
  background-color: #e8e2d9;
  color: #1a1a1a;
}

.hp-agents_section-customers .hp-agents_splide-card.is-yellow {
  background-color: #efe6d6;
  color: #1a1a1a;
}

.hp-agents_section-customers .hp-agents_splide-card.is-light-purple {
  background-color: #e4e8ee;
  color: #1a1a1a;
}

.hp-agents_section-customers .hp-agents_splide-card.is-sales {
  background-color: #d5e8e4;
  color: #1a1a1a;
}

.hp-agents_section-customers .hp-agents_splide-card.is-purple {
  background-color: #1e3a5f;
  color: #fff;
}

.hp-agents_section-customers .hp-agents_splide-card.is-purple .pinkish-span {
  color: #c5d8ea;
}

.hp-agents_section-customers .hp-agents_splide-card.is-blue {
  background-color: #dce4ec;
  color: #1a1a1a;
}

.hp-agents_section-customers .hp-agents_splide-card.is-peach {
  background-color: #eadcd0;
  color: #1a1a1a;
}

.hp-agents_section-customers .hp-agents_splide-card.is-mint {
  background-color: #dce8de;
  color: #1a1a1a;
}

@media screen and (max-width: 991px) {
  .hp-agents_section-customers .splide__slide.hp-agents_slide {
    width: min(26rem, 100%) !important;
    max-width: min(26rem, 100%) !important;
    height: 32rem !important;
  }

  .hp-agents_section-customers .hp-agents_splide-card {
    height: 100% !important;
  }

  .hp-agents_section-customers .hp-agents_splide-image-wrapper,
  .hp-agents_section-customers .hp-agents_splide-image-wrapper.is-sq {
    width: 100%;
    height: 11.5rem;
    flex: 0 0 11.5rem;
    background: #f6f7f9;
    display: flex;
    justify-content: center;
    border-radius: 1rem;
  }
}

/* Cloud Solution tabs — product mockups already include card + shadow */
.hp-dep-tabs-center .hp-tab-layout-end:has(.ecount-cloud-tab-img) {
  background: transparent;
  padding: 0;
  box-shadow: none;
}

.hp-tab-hero-img.ecount-cloud-tab-img {
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
  border-radius: 1rem;
  box-shadow: none;
  background: transparent;
}

.splide__slide.for-agents-hp {
  height: auto;
  max-width: 26rem;
}

.apl-acc-comp-light .agent-carousel,
.hp-mb-agents-tabs-menu .agent-carousel,
.hp-mb-agents-tabs-menu .agent-carousel-mb {
  padding-bottom: 0;
}

.apl-acc-comp-light .agents-carousel-1,
.hp-mb-agents-tabs-menu .agents-carousel-1 {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.apl-acc-comp-light .agents-carousel-1 .splide__track,
.hp-mb-agents-tabs-menu .agents-carousel-1 .splide__track {
  width: 100%;
}

.apl-acc-comp-light .agents-carousel-1 .splide__pagination,
.hp-mb-agents-tabs-menu .agents-carousel-1 .splide__pagination {
  display: flex !important;
  flex-wrap: nowrap;
  position: static;
  left: auto;
  right: auto;
  bottom: auto;
  z-index: 3;
  width: auto;
  margin: 1.25rem auto 0;
  padding: 0;
  list-style: none;
  justify-content: center;
  align-items: center;
  gap: 10px;
  transform: none;
  pointer-events: auto;
}

.apl-acc-comp-light .agents-carousel-1 .splide__pagination li,
.hp-mb-agents-tabs-menu .agents-carousel-1 .splide__pagination li {
  display: flex;
  margin: 0;
  padding: 0;
  line-height: 0;
  list-style: none;
}

.apl-acc-comp-light .agents-carousel-1 .splide__pagination__page,
.hp-mb-agents-tabs-menu .agents-carousel-1 .splide__pagination__page {
  box-sizing: border-box;
  width: 10px;
  height: 10px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #cfd3dc;
  opacity: 1;
  transform: none;
}

.apl-acc-comp-light .agents-carousel-1 .splide__pagination__page.is-active,
.hp-mb-agents-tabs-menu .agents-carousel-1 .splide__pagination__page.is-active {
  width: 10px;
  height: 10px;
  background: #0073BC;
  transform: none;
}

.agents-slide-card-image {
  width: 100%;
  height: 20rem;
  max-height: none;
  object-fit: contain;
  object-position: center;
  aspect-ratio: auto;
  background: #f6f7f9;
  border-radius: 1rem;
}

@media screen and (max-width: 767px) {
  .agents-slide-card-image {
    height: 13rem;
    max-height: none;
  }
}

/* Footer — keep existing layout, eCount links only */
.section-footer .ecount-footer-head-spacer {
  visibility: hidden;
}

.section-footer .group_footer-bottom-start-dt:empty {
  display: none;
}

.section-footer .footer-link-wrapper {
  min-height: 40px;
}

.section-footer .footer-product-icon {
  width: 1.35rem;
  height: 1.35rem;
  flex: none;
}

/* eCount AI live demo */
.ecount-ai-demo-section .ai-demo-window {
  width: 100%;
  max-width: 960px;
  margin: 3rem auto 0;
  overflow: hidden;
  border: 1px solid #eceeef;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 24px 64px rgba(15, 23, 42, 0.12);
  text-align: left;
}

.ecount-ai-demo-section .ai-demo-topbar {
  display: flex;
  align-items: center;
  min-height: 52px;
  padding: 14px 20px;
  border-bottom: 1px solid #e5e5e7;
  background: #f7f7f8;
}

.ecount-ai-demo-section .ai-demo-dots {
  display: flex;
  flex: 1;
  gap: 8px;
}

.ecount-ai-demo-section .ai-demo-dots span {
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
}

.ecount-ai-demo-section .ai-demo-topbar-title {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #0073BC;
  font-size: 15px;
  font-weight: 700;
}

.ecount-ai-demo-section .ai-demo-topbar-spacer {
  flex: 1;
}

.ecount-ai-demo-section .ai-demo-topbar-title .material-icons,
.ecount-ai-demo-section .ai-demo-topbar-title .ai-demo-title-icon,
.ecount-ai-demo-section .ai-demo-input-icon,
.ecount-ai-demo-section .ai-demo-send-btn .material-icons,
.ecount-ai-demo-section .ai-demo-resp-hdr .material-icons,
.ecount-ai-demo-section .ai-demo-act-icon .material-icons {
  font-size: 18px;
  width: auto;
  height: auto;
  line-height: 1;
}

.ecount-ai-demo-section .ai-demo-topbar-title .ai-demo-title-icon {
  width: 20px;
  height: 20px;
  object-fit: contain;
  display: block;
}

.ecount-ai-demo-section .ai-demo-input-icon {
  width: 22px;
  height: 22px;
  object-fit: contain;
  display: block;
  flex: none;
}

.ecount-ai-demo-section .ai-demo-resp-hdr .material-icons {
  font-size: 16px;
}

.ecount-ai-demo-section .ai-demo-chat {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-height: 500px;
  max-height: 550px;
  padding: 28px 32px;
  overflow-y: auto;
  background: #fff;
  scroll-behavior: smooth;
}

.ecount-ai-demo-section .ai-demo-chat::-webkit-scrollbar {
  width: 4px;
}

.ecount-ai-demo-section .ai-demo-chat::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background: #d1d5db;
}

.ecount-ai-demo-section .ai-demo-msg-user {
  align-self: flex-end;
  max-width: 85%;
  padding: 12px 18px;
  border-radius: 18px 18px 4px 18px;
  background: #f3f4f6;
  color: #1f2937;
  font-size: 16px;
  line-height: 1.55;
}

.ecount-ai-demo-section .ai-demo-msg-ai {
  align-self: flex-start;
  max-width: 94%;
  padding: 18px;
  border: 1px solid #e9f6fe;
  border-radius: 4px 18px 18px 18px;
  background: #f5fbff;
}

.ecount-ai-demo-section .ai-demo-resp-hdr {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  color: #0073bc;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

.ecount-ai-demo-section .ai-demo-stagger {
  opacity: 0;
  transform: translateY(6px);
}

.ecount-ai-demo-section .ai-demo-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.ecount-ai-demo-section .ai-demo-mcard {
  padding: 14px 12px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fff;
  text-align: center;
}

.ecount-ai-demo-section .ai-demo-mval {
  color: #111827;
  font-size: 26px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.03em;
}

.ecount-ai-demo-section .ai-demo-mlbl {
  margin-top: 4px;
  color: #6b7280;
  font-size: 13px;
}

.ecount-ai-demo-section .ai-demo-mchg {
  margin-top: 5px;
  font-size: 12px;
  font-weight: 600;
}

.ecount-ai-demo-section .ai-demo-chg-up { color: #16a34a; }
.ecount-ai-demo-section .ai-demo-chg-down { color: #dc2626; }

.ecount-ai-demo-section .ai-demo-tbl {
  overflow: hidden;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #fff;
}

.ecount-ai-demo-section .ai-demo-tr {
  display: grid;
  align-items: center;
  padding: 10px 14px;
  border-bottom: 1px solid #f3f4f6;
  color: #374151;
  font-size: 14px;
}

.ecount-ai-demo-section .ai-demo-tr:last-child {
  border-bottom: none;
}

.ecount-ai-demo-section .ai-demo-tr-hd {
  background: #f9fafb;
  color: #6b7280;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.ecount-ai-demo-section .ai-demo-act {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #1f2937;
  font-size: 16px;
  line-height: 1.55;
}

.ecount-ai-demo-section .ai-demo-act-icon {
  color: #16a34a;
}

.ecount-ai-demo-section .ai-demo-act-icon .ai-demo-icon {
  width: 20px;
  height: 20px;
}

.ecount-ai-demo-section .ai-demo-thinking {
  display: flex;
  align-self: flex-start;
  gap: 5px;
  padding: 8px 0;
}

.ecount-ai-demo-section .ai-demo-thinking span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #b5e1fd;
  animation: ecountAiDemoDot 1.4s ease-in-out infinite;
}

.ecount-ai-demo-section .ai-demo-thinking span:nth-child(2) { animation-delay: 0.2s; }
.ecount-ai-demo-section .ai-demo-thinking span:nth-child(3) { animation-delay: 0.4s; }

@keyframes ecountAiDemoDot {
  0%, 80%, 100% { opacity: 0.4; transform: translateY(0); }
  40% { opacity: 1; transform: translateY(-8px); }
}

.ecount-ai-demo-section .ai-demo-inputbar {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  border-top: 1px solid #e5e7eb;
  background: #fafafa;
}

.ecount-ai-demo-section .ai-demo-input-icon {
  width: 22px !important;
  height: 22px !important;
  max-width: 22px !important;
  color: #3aa7ed;
}

.ecount-ai-demo-section .ai-demo-input-field {
  position: relative;
  display: flex;
  align-items: center;
  flex: 1;
  min-height: 28px;
  min-width: 0;
  color: #111827;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}

.ecount-ai-demo-section .ai-demo-typed {
  color: #111827;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  white-space: pre-wrap;
  word-break: break-word;
}

.ecount-ai-demo-section .ai-demo-placeholder {
  position: absolute;
  left: 0;
  top: 50%;
  color: #9ca3af;
  font-size: 16px;
  font-weight: 400;
  pointer-events: none;
  transform: translateY(-50%);
}

.ecount-ai-demo-section .ai-demo-input-field.is-typing .ai-demo-placeholder {
  display: none;
}

.ecount-ai-demo-section .ai-demo-cursor {
  display: none;
  flex: none;
  width: 2px;
  height: 20px;
  margin-left: 2px;
  background: #3aa7ed;
  animation: ecountAiDemoBlink 0.7s step-end infinite;
}

.ecount-ai-demo-section .ai-demo-input-field.is-typing .ai-demo-cursor {
  display: inline-block;
}

.ecount-ai-demo-section .ai-demo-send-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: none;
  border-radius: 50%;
  background: #e5e7eb;
  color: #9ca3af;
  cursor: default;
  transition: background 0.2s ease, color 0.2s ease;
}

.ecount-ai-demo-section .ai-demo-send-btn .ai-demo-icon {
  width: 18px !important;
  height: 18px !important;
  max-width: 18px !important;
}

@keyframes ecountAiDemoBlink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}

.ecount-ai-demo-section .ai-demo-send-active {
  background: #3aa7ed;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .for-desktop.ecount-ai-demo-section {
    display: block;
  }

  .ecount-ai-demo-section .ai-demo-window {
    margin-top: 2rem;
    border-radius: 12px;
  }

  .ecount-ai-demo-section .ai-demo-chat {
    min-height: 400px;
    max-height: 500px;
    padding: 18px;
    gap: 12px;
  }

  .ecount-ai-demo-section .ai-demo-mval {
    font-size: 16px;
  }

  .ecount-ai-demo-section .ai-demo-mcard {
    padding: 10px 8px;
  }

  .ecount-ai-demo-section .ai-demo-msg-ai {
    max-width: 95%;
    padding: 12px;
  }

  .ecount-ai-demo-section .ai-demo-msg-user {
    max-width: 90%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ecount-ai-demo-section .ai-demo-thinking span,
  .ecount-ai-demo-section .ai-demo-cursor {
    animation: none;
  }
}

/* Homepage blogs — Browse Our Articles */
.hp-blogs {
  /* background: #f7f8fa; */
}

.hp-blogs__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 2.5rem;
}

.hp-blogs .sec-h-topic {
  color: #0073BC;
  font-size: 1rem;
  font-weight: 500;
}

.hp-blogs__title {
  text-align: left !important;
  max-width: none !important;
  margin: 0;
  color: #1a1a1a;
  font-size: clamp(2rem, 4vw, 3.25rem) !important;
  line-height: 1.15 !important;
}

.hp-blogs__title span {
  color: #0073BC;
}

.hp-blogs__btn {
  flex: none;
  background-color: #0073BC !important;
  border-color: #0073BC !important;
  color: #fff !important;
  border-radius: 10rem;
  padding: 0.95rem 1.75rem;
}

.hp-blogs__btn:hover {
  background-color: #005a94 !important;
  border-color: #005a94 !important;
  color: #fff !important;
}

.hp-blogs__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
}

.hp-blogs__card {
  overflow: hidden;
  border: 1px solid #e6e8ee;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(16, 24, 40, 0.06);
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.hp-blogs__card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(16, 24, 40, 0.1);
}

.hp-blogs__media {
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #eef2f6;
}

.hp-blogs__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.hp-blogs__body {
  padding: 1.15rem 1.25rem 1.4rem;
}

.hp-blogs__date {
  display: block;
  margin-bottom: 0.65rem;
  color: #8a8f9c;
  font-size: 0.92rem;
}

.hp-blogs__card-title {
  margin: 0;
  color: #0073BC;
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.4;
}

@media screen and (max-width: 991px) {
  .hp-blogs__grid {
    grid-template-columns: 1fr;
  }

  .hp-blogs__head {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Mobile based card — store badges over the phone mockup */
.hp-agents-limitless_card-image-wrap.is-mobile-apps {
  position: relative;
}

/* Integrated API logos — circular overlapping badges like AI icon stack */
.hp-agents-limitless_ai-wrapper {
  display: flex;
  align-items: center;
}

.hp-agents-limitless_ai-logo.is-header {
  width: 3.25rem;
  height: 3.25rem;
  object-fit: cover;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
  margin-right: -0.7rem;
}

.hp-agents-limitless_ai-logo.is-header.is-6 {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

@media screen and (max-width: 991px) {
  .hp-agents-limitless_ai-logo.is-header {
    width: 2.85rem;
    height: 2.85rem;
    margin-right: -0.6rem;
  }
}

@media screen and (max-width: 479px) {
  .hp-agents-limitless_ai-logo.is-header {
    width: 2.5rem;
    height: 2.5rem;
    margin-right: -0.5rem;
  }
}

.hp-agents-limitless_store-badges {
  position: absolute;
  left: 50%;
  bottom: 6%;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  transform: translateX(-50%);
}

.hp-agents-limitless_store-badges a {
  display: block;
  line-height: 0;
}

.hp-agents-limitless_store-badges img {
  display: block;
  width: auto;
  height: 40px;
}

@media screen and (max-width: 991px) {
  .hp-agents-limitless_store-badges {
    bottom: 5%;
    gap: 0.5rem;
  }

  .hp-agents-limitless_store-badges img {
    height: 32px;
  }
}

@media screen and (max-width: 479px) {
  .hp-agents-limitless_store-badges img {
    height: 26px;
  }
}

/* Cloud-based mockup — floating tip badges */
.hp-agents-limitless_card-image-wrap.is-cloud-mockup {
  position: relative;
  overflow: visible;
}

.hp-agents-limitless_card-image-wrap.is-cloud-mockup > .hp-agents-limitless_card-image {
  opacity: 0.65;
  transition: opacity 0.35s ease;
}

.hp-agents-limitless_card-image-wrap.is-cloud-mockup:hover > .hp-agents-limitless_card-image {
  opacity: 0.65;
}

.cloud-pointers {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}

@keyframes cloud-pointer-in {
  from {
    opacity: 0;
    transform: translateY(14px) scale(0.9);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes cloud-pointer-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

@keyframes cloud-pointer-float-x {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(-7px); }
}

@keyframes cloud-tip-pulse {
  0%, 100% { filter: drop-shadow(0 0 0 rgba(255, 61, 154, 0)); }
  50% { filter: drop-shadow(0 0 6px rgba(255, 61, 154, 0.55)); }
}

.cloud-pointer {
  --tip: #ff3d9a;
  --in-delay: 0s;
  position: absolute;
  display: flex;
  align-items: center;
  gap: 0.65rem;
  width: max-content;
  max-width: 15rem;
  padding: 0.45rem 0.85rem 0.45rem 0.45rem;
  background: #fff;
  border-radius: 0.85rem;
  box-shadow: 0 10px 28px rgba(20, 30, 50, 0.16);
  pointer-events: none;
  cursor: default;
  opacity: 0;
  visibility: hidden;
  transform: translateY(14px) scale(0.9);
  will-change: transform, opacity;
  transition: box-shadow 0.25s ease;
}

.cloud-pointers.is-in-view .cloud-pointer {
  visibility: visible;
  pointer-events: auto;
  animation:
    cloud-pointer-in 0.7s cubic-bezier(0.22, 1, 0.36, 1) var(--in-delay) both,
    cloud-pointer-float 3.2s ease-in-out calc(var(--in-delay) + 0.75s) infinite;
}

.cloud-pointers.is-in-view .cloud-pointer.is-branch {
  animation-name: cloud-pointer-in, cloud-pointer-float-x;
}

.cloud-pointer:hover .cloud-pointer__icon,
.cloud-pointer:focus-visible .cloud-pointer__icon {
  transform: scale(1.1) rotate(-5deg);
}

.cloud-pointer__icon {
  flex: 0 0 auto;
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 0.55rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  transition: transform 0.25s ease;
}

.cloud-pointer__icon svg {
  width: 1.15rem;
  height: 1.15rem;
  display: block;
}

.cloud-pointer__icon.is-blue {
  background: linear-gradient(145deg, #3b9dff, #0073bc);
}

.cloud-pointer__icon.is-teal {
  background: linear-gradient(145deg, #2dd4bf, #0d9488);
}

.cloud-pointer__icon.is-orange {
  background: linear-gradient(145deg, #fb923c, #ea580c);
}

.cloud-pointer__text {
  display: flex;
  flex-direction: column;
  gap: 0.12rem;
  min-width: 0;
  line-height: 1.2;
  padding-right: 0.15rem;
}

.cloud-pointer__text strong {
  font-size: 0.82rem;
  font-weight: 700;
  color: #111827;
}

.cloud-pointer__text em {
  font-style: normal;
  font-size: 0.72rem;
  color: #6b7280;
}

/* Pink cursor arrow — white outline + gap from card */
.cloud-pointer::after {
  content: "";
  position: absolute;
  width: 1.15rem;
  height: 1.15rem;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  /* Classic cursor arrow: tip top-left, pink fill + thick white stroke */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28' fill='none'%3E%3Cpath d='M5.2 3.4v18.6l4.7-4.5 3.8 8.35 3.55-1.6-3.75-8.2 6.7.05L5.2 3.4z' fill='%23FF2D92' stroke='%23FFFFFF' stroke-width='2.4' stroke-linejoin='round' stroke-linecap='round'/%3E%3C/svg%3E");
  border: none;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.14));
  z-index: 1;
}

.cloud-pointers.is-in-view .cloud-pointer::after {
  animation: cloud-tip-pulse 2.4s ease-in-out infinite;
}

/* Below card, near bottom-right — tip aims up toward card with clear gap */
.cloud-pointer.tip-bottom::after {
  left: auto;
  right: 0.55rem;
  bottom: auto;
  top: calc(100% + 0.4rem);
  transform: rotate(0deg);
}

/* Left of card — tip aims right toward card with clear gap */
.cloud-pointer.tip-left::after {
  left: auto;
  right: calc(100% + 0.4rem);
  top: 50%;
  margin-top: -0.55rem;
  transform: rotate(90deg);
}

/* Right of card — tip aims left toward card with clear gap */
.cloud-pointer.tip-right::after {
  left: calc(100% + 0.4rem);
  right: auto;
  top: 50%;
  margin-top: -0.55rem;
  transform: rotate(-90deg);
}

.cloud-pointer.is-gst {
  --in-delay: 0.05s;
  left: 24%;
  top: 14%;
}

.cloud-pointer.is-branch {
  --in-delay: 0.22s;
  right: 4%;
  left: auto;
  top: 38%;
}

.cloud-pointers.is-in-view .cloud-pointer:hover,
.cloud-pointers.is-in-view .cloud-pointer:focus-visible {
  animation-play-state: paused;
  transform: translateY(-8px) scale(1.05);
  box-shadow: 0 18px 40px rgba(20, 30, 50, 0.24);
  z-index: 3;
  outline: none;
}

.cloud-pointers.is-in-view .cloud-pointer.is-branch:hover,
.cloud-pointers.is-in-view .cloud-pointer.is-branch:focus-visible {
  transform: translateX(-8px) scale(1.05);
}

.cloud-pointer.is-stock {
  --in-delay: 0.4s;
  left: 18%;
  top: 62%;
}

@media screen and (max-width: 1200px) {
  .cloud-pointer {
    max-width: 13rem;
  }
}

@media screen and (max-width: 991px) {
  .cloud-pointer__text strong {
    font-size: 0.74rem;
  }
  .cloud-pointer__text em {
    font-size: 0.64rem;
  }
  .cloud-pointer__icon {
    width: 2rem;
    height: 2rem;
  }
}

@media screen and (max-width: 767px) {
  .cloud-pointers {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cloud-pointer,
  .cloud-pointer::after {
    animation: none !important;
    opacity: 1;
    visibility: visible;
    transform: none;
    pointer-events: auto;
    transition: none;
  }
  .cloud-pointer__icon {
    transition: none;
  }
}

