/* ========================================
   WFX Fashion PLM - Mobile Responsive CSS
   ======================================== */

@media (max-width: 768px) {
  .slick-dots li.slick-active button:before {
    color: #0099c4;
  }
  .slick-dots li button:before {
    width: 23px;
    height: 6px;
    border-radius: 10px;
    content: "";
    background: #0099c4;
  }
  .cat-card {
    margin-bottom: 18px;
  }
  .carousel-swipe-hint {
    text-align: center;
  }
  .carousel-slide {
    padding: 10px 5px;
  }
  /* ---------- Global Mobile Styles ---------- */
  body {
    font-size: 15px;
    line-height: 1.6;
  }

  .container {
    padding: 0 20px;
    max-width: 100%;
  }

  section {
    padding: 48px 20px;
  }

  h1 {
    font-size: 32px;
    line-height: 1.25;
    font-weight: 700;
    margin-bottom: 16px;
  }

  h2 {
    font-size: 28px;
    line-height: 1.3;
    font-weight: 700;
    margin-bottom: 16px;
  }

  h3 {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 12px;
  }

  p {
    font-size: 15px;
    color: #5b6472;
    line-height: 1.6;
    margin-bottom: 12px;
  }

  .eyebrow {
    margin-bottom: 24px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: #0099c4;
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #00cec6;
    display: inline-block;
  }

  .btn {
    width: 100%;
    padding: 14px 20px;
    font-size: 15px;
    font-weight: 600;
    min-height: 48px;
    border-radius: 999px;
    border: none;
  }

  .btn-primary {
    background: linear-gradient(135deg, #00cec6 0%, #0099c4 100%);
    color: #fff;
    font-size: 14px !important;
  }
  .btn.btn-secondary {
    border-radius: 999px;
    font-weight: 600;
    font-size: 15px;
    text-decoration: none;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #fff;
    color: #0099c4;
    border: 1.5px solid #bfe6f1;
  }

  .btn-ghost {
    background: #fff;
    color: #0099c4;
    border: 1.5px solid #bfe6f1;
  }

  /* ---------- Nav Mobile ---------- */
  nav {
    padding: 14px 20px;
    background: #fff;
    border-bottom: 1px solid #e6eaf0;
  }

  nav .nav-links {
    display: none;
  }

  nav .nav-cta {
    gap: 8px;
  }

  nav .logo {
    font-weight: 700;
    font-size: 16px;
  }

  /* ---------- Hero Mobile ---------- */
  .hero {
    padding: 40px 20px 48px;
    background: linear-gradient(180deg, #fbfdff, #ffffff);
  }

  .hero h1 {
    margin: 0 0 16px 0;
    font-size: 32px;
    line-height: 1.25;
    font-weight: 700;
    color: #0f1728;
  }

  .hero-desc {
    font-size: 16px;
    color: #5b6472;
    margin-bottom: 24px;
    line-height: 1.6;
  }

  .hero-ctas {
    flex-direction: column;
    gap: 12px;
  }
  .hero-img {
    margin-top: 30px;
  }
  .hero-trust {
    font-size: 14px;
    color: #6b7585;
    margin-top: 20px;
  }

  .hpp-tape {
    display: none;
  }

  .hero-visual {
    display: none;
  }

  /* ---------- Trusted Section Mobile ---------- */
  .trusted {
    padding: 15px 20px;
    background: #f6f9fb;
  }

  .trusted h2 {
    font-size: 18px;
    font-weight: 700;
    color: #0f1728;
    margin-bottom: 20px;
    text-align: center;
  }
  .trusted .label {
    margin-bottom: 6px;
  }
  .logos {
    gap: 16px;
    font-size: 12px;
    flex-wrap: wrap;
    justify-content: center;
  }
  .carousel-slide {
    min-height: 0px;
  }
  .logos .logo {
    color: #7b8594;
    font-weight: 600;
  }

  /* ---------- Problem Cards Mobile ---------- */
  .pcard {
    margin-top: 14px;
    padding: 20px;
  }

  .prob-card {
    margin-top: 14px;
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 16px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
    padding: 20px;
  }

  .thumb {
    height: 120px;
    font-size: 12px;
    border-radius: 12px;
    margin-bottom: 14px;
  }

  .pcard h3 {
    font-size: 18px;
    font-weight: 700;
    margin: 12px 0 10px;
    color: #0f1728;
  }

  .pcard p {
    font-size: 14px;
    color: #5b6472;
    line-height: 1.6;
  }

  /* ---------- Capabilities Mobile ---------- */
  .capabilities.mobile {
    padding: 40px 0;
    background: linear-gradient(180deg, #fbfdff, #ffffff);
  }

  .capabilities.mobile .container {
    padding: 0 20px;
  }

  .capabilities.mobile .section-head {
    text-align: center;
    margin-bottom: 28px;
  }

  .capabilities.mobile .eyebrow {
    margin-bottom: 16px;
    font-size: 11px;
  }

  .capabilities.mobile h2 {
    font-size: 28px;
    line-height: 1.3;
    margin-bottom: 12px;
    font-weight: 700;
    color: #0f1728;
  }

  .capabilities.mobile > .container > div:first-child > p {
    text-align: center;
    color: #5b6472;
    font-size: 15px;
    max-width: 480px;
    margin: 0 auto;
  }

  .cap-stepper.mobile {
    display: flex;
    justify-content: space-between;
    position: relative;
    margin: 0px 0 28px 0;
    padding: 0 20px;
    gap: 8px;
    align-items: flex-start;
  }

  .cap-stepper.mobile::before {
    content: "";
    position: absolute;
    top: 35px;
    left: calc(5% + 20px);
    right: calc(5% + 20px);
    height: 2px;
    background: #e6eaf0;
    z-index: 0;
  }

  .cap-step {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    flex: 1;
    cursor: pointer;
    position: relative;
    z-index: 1;
    background: none;
    border: 0;
    padding: 0;
    font-family: inherit;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .cap-step .step-num {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 2px solid #cfd8e2;
    background: #fff;
    color: #9aa3b1;
    font-size: 16px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    flex-shrink: 0;
  }

  .cap-step .step-label {
    font-size: 11px;
    font-weight: 600;
    color: #6b7585;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    text-align: center;
    line-height: 1.2;
  }

  .cap-step.active {
    border-radius: 16px;
    background: rgba(255, 107, 53, 0.02);
    animation: fadeIn 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }

  @keyframes fadeIn {
    from {
      opacity: 0.7;
    }
    to {
      opacity: 1;
    }
  }

  .cap-step.active .step-num {
    background: #0099c4;
    color: #fff;
    border-color: #0099c4;
    box-shadow: 0 0 0 8px rgba(0, 153, 196, 0.1);
  }

  .cap-step.active .step-label {
    color: #0099c4;
    font-weight: 700;
  }

  .cap-step.done .step-num {
    border-color: #0099c4;
    color: #0099c4;
  }

  .cap-step.done .step-label {
    color: #0099c4;
  }

  .cap-card-container-mobile {
    padding: 0 20px 32px 20px;
    animation: fadeInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  }

  @keyframes fadeInUp {
    from {
      opacity: 0;
      transform: translateY(16px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .cap-track-mobile {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    margin: 0 -20px;
    padding: 0 20px;
  }

  .cap-track-mobile::-webkit-scrollbar {
    display: none;
  }

  .cap-slide-mobile {
    flex: 0 0 100%;
    scroll-snap-align: center;
    padding: 0;
  }

  .cap-card-mobile {
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 16px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
    padding: 24px;
    animation: fadeInCard 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  }

  @keyframes fadeInCard {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }

  .cap-meta-mobile {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    flex-wrap: wrap;
  }

  .step-chip {
    font-size: 11px;
    font-weight: 700;
    color: #0099c4;
    background: #ecf9fc;
    padding: 6px 12px;
    border-radius: 8px;
    white-space: nowrap;
  }

  .cap-cat {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: #7b8594;
    text-transform: uppercase;
  }

  .cap-card-mobile h3 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 12px;
    line-height: 1.3;
    color: #0f1728;
  }

  .cap-card-mobile > p {
    color: #5b6472;
    font-size: 14px;
    margin-bottom: 20px;
    line-height: 1.6;
  }

  .cap-list-mobile {
    list-style: none;
    padding: 0;
    margin-bottom: 20px;
  }

  .cap-list-mobile li {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    font-size: 14px;
    color: #3c4654;
    padding: 8px 0;
    line-height: 1.5;
  }

  .cap-list-mobile .check {
    flex: 0 0 18px;
    height: 18px;
    border-radius: 4px;
    background: #ecf9fc;
    color: #0099c4;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 700;
    margin-top: 2px;
  }

  .ai-box-mobile {
    background: linear-gradient(135deg, #ecf9fc 0%, #f0fafc 100%);
    border: 1px solid #d6eef0;
    border-radius: 12px;
    padding: 14px 16px;
    margin: 20px 0;
    position: relative;
  }

  .ai-box-mobile .up {
    position: absolute;
    top: -10px;
    right: 12px;
    background: #f6a609;
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 6px;
    letter-spacing: 0.05em;
  }

  .ai-head-mobile {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
  }

  .ai-label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #0099c4;
  }

  .ai-box-mobile p {
    font-size: 13px;
    color: #3c4654;
    line-height: 1.5;
  }

  .cap-links-mobile {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 18px;
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid #e6eaf0;
  }

  .cap-links-mobile a {
    color: #0099c4;
    font-weight: 700;
    font-size: 13px;
    white-space: nowrap;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: color 0.25s ease;
  }

  .cap-links-mobile a:hover {
    color: #007a99;
  }

  .ai-ribbon-mobile {
    background: #ecf9fc;
    border: 1px solid #d6eef0;
    border-radius: 12px;
    padding: 16px;
    margin: 24px 0 20px 0;
    position: relative;
  }

  .ai-ribbon-mobile::before {
    content: "";
    position: absolute;
    left: 16px;
    top: 20px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #00cec6;
  }

  .ai-ribbon-mobile .type {
    font-size: 9px;
    font-weight: 700;
    color: #fff;
    background: #ff9500;
    padding: 4px 10px;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    position: absolute;
    right: 13px;
    top: -12px;
  }

  .ai-ribbon-mobile .ai-pulse {
    display: none;
  }

  .ai-ribbon-mobile .ai-pulse span {
    display: none;
  }

  .ai-ribbon-mobile .ai-text {
    padding-left: 16px;
    padding-top: 0px;
  }

  .ai-ribbon-mobile small {
    font-size: 10px;
    font-weight: 700;
    color: #0099c4;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    display: block;
    margin-bottom: 6px;
  }

  .ai-ribbon-mobile strong {
    font-size: 14px;
    font-weight: 700;
    color: #0f1728;
    line-height: 1.4;
    display: block;
    margin-bottom: 8px;
    margin-top: 16px;
  }

  .ai-ribbon-mobile p {
    font-size: 14px;
    color: #5b6472;
    line-height: 1.6;
    margin: 0;
  }

  .cap-hint-mobile {
    text-align: center;
    font-size: 13px;
    font-weight: 600;
    color: #7b8594;
    padding: 14px 20px 0;
    margin-bottom: 0;
  }

  .cap-hint-mobile span::after {
    content: " →";
    margin-left: 4px;
  }

  .cap-dots-mobile {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 5px;
  }

  .cap-dots-mobile .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #d4dbe4;
    border: 0;
    padding: 0;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .cap-dots-mobile .dot.on {
    background: #0099c4;
    width: 24px;
    border-radius: 6px;
  }

  /* ---------- Stories Mobile ---------- */
  .stories.mobile {
    background: linear-gradient(180deg, #fbfdff, #ffffff);
    padding: 40px 0;
  }

  .stories.mobile .container {
    padding: 0 20px;
  }

  .stories.mobile .section-head {
    text-align: center;
    margin-bottom: 28px;
  }

  .stories.mobile .eyebrow {
    margin-bottom: 16px;
    font-size: 11px;
  }

  .stories.mobile h2 {
    font-size: 28px;
    line-height: 1.3;
    margin-bottom: 12px;
    font-weight: 700;
    color: #0f1728;
  }

  .stories.mobile > .container > div:first-child > p {
    text-align: center;
    color: #5b6472;
    font-size: 15px;
    max-width: 480px;
    margin: 0 auto;
  }

  .story-card-container-mobile {
    padding: 0 20px 28px;
    margin: 0;
    animation: fadeInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .story-track-mobile {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    margin: 0 -20px;
    padding: 0 20px;
  }

  .story-track-mobile::-webkit-scrollbar {
    display: none;
  }

  .story-slide-mobile {
    flex: 0 0 100%;
    scroll-snap-align: center;
  }

  .story-card-mobile {
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 16px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
    overflow: hidden;
    animation: fadeInCard 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .story-dots-mobile {
    display: flex;
    gap: 8px;
    justify-content: center;
  }

  .story-dots-mobile button {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }

  /* ---------- Industries Mobile ---------- */
  .icard {
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 16px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
    padding: 20px;
    margin-top: 14px;
  }

  .icard .ico {
    width: 52px;
    height: 52px;
    margin-bottom: 14px;
  }

  .icard h3 {
    font-size: 16px;
    font-weight: 700;
    color: #0f1728;
    margin-bottom: 8px;
  }

  .icard p {
    font-size: 14px;
    color: #5b6472;
    margin-bottom: 12px;
  }

  .pills {
    gap: 8px;
  }

  .pill {
    font-size: 12px;
    padding: 6px 12px;
    background: #ecf9fc;
    color: #0099c4;
    border-radius: 10px;
    font-weight: 600;
  }

  /* ---------- Integrations Grid Mobile ---------- */
  .grid2 {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .intg {
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 14px;
    padding: 16px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
  }

  .intg h4 {
    font-size: 14px;
    font-weight: 700;
    color: #0f1728;
  }

  .intg-stats {
    gap: 10px;
  }

  /* ---------- FAQ Mobile ---------- */
  .faq details {
    margin-top: 12px;
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
  }

  .faq summary {
    padding: 16px;
    font-size: 14px;
    font-weight: 600;
    color: #0f1728;
    cursor: pointer;
  }

  .faq .ans {
    padding: 0 16px 16px;
    font-size: 14px;
    color: #5b6472;
    line-height: 1.6;
    border-top: 1px solid #e6eaf0;
  }

  /* ---------- Demo Form Mobile ---------- */
  .demo {
    padding: 48px 20px;
    background: linear-gradient(180deg, #fbfdff, #ffffff);
  }

  .demo .section-head {
    text-align: center;
    margin-bottom: 32px;
  }

  .demo h2 {
    font-size: 28px;
    line-height: 1.3;
    font-weight: 700;
    margin-bottom: 16px;
  }

  .demo > .container > div:nth-child(2) {
    text-align: center;
    color: #5b6472;
    font-size: 15px;
    max-width: 450px;
    margin: 0 auto 28px;
  }

  .field {
    background: #fff;
    border: 1px solid #d0d6e0;
    padding: 12px 14px;
    margin-top: 12px;
    border-radius: 10px;
    font-size: 14px;
  }

  .field::placeholder {
    color: #9aa3b1;
  }

  /* ---------- Problem Section Mobile ---------- */
  .prob-card {
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 16px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
    padding: 20px;
    margin-top: 14px;
  }

  .prob-card .top {
    margin-bottom: 14px;
  }

  .num {
    font-size: 28px;
    font-weight: 700;
    color: #0f1728;
  }

  .chip {
    font-size: 11px;
    padding: 5px 12px;
    background: #ecf9fc;
    color: #0099c4;
    border-radius: 10px;
    font-weight: 600;
  }

  /* ---------- Impact Items Mobile ---------- */
  .impact .item {
    padding: 20px 0;
    border-bottom: 1px solid #e6eaf0;
  }

  .impact .item:last-child {
    border-bottom: none;
  }

  .impact .num {
    margin-bottom: 8px;
    font-size: 26px;
    font-weight: 700;
    color: #0099c4;
  }

  .impact h3 {
    font-size: 16px;
    font-weight: 700;
    color: #0f1728;
    margin-bottom: 6px;
  }

  .impact p {
    font-size: 14px;
    color: #5b6472;
    line-height: 1.6;
  }

  /* ---------- Diff Cards Mobile ---------- */
  .diff-card {
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 16px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
    padding: 20px;
    margin-top: 14px;
  }

  .diff-card .ico {
    width: 52px;
    height: 52px;
    margin-bottom: 14px;
  }

  .diff-card h3 {
    font-size: 16px;
    font-weight: 700;
    color: #0f1728;
    margin-bottom: 8px;
  }

  .diff-card p {
    font-size: 14px;
    color: #5b6472;
    line-height: 1.6;
  }

  /* ---------- H2H Mobile ---------- */
  .cmp-legend {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 16px;
  }

  .cmp-legend > div {
    padding: 12px 14px;
    font-size: 12px;
    font-weight: 600;
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 10px;
  }

  .cmp-card {
    margin-top: 12px;
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
  }

  .cmp-cap {
    font-size: 14px;
    padding: 14px;
    font-weight: 600;
    color: #0f1728;
    border-bottom: 1px solid #e6eaf0;
  }

  .cmp-col {
    padding: 12px 14px;
    font-size: 13px;
  }

  .cmp-col .v {
    font-size: 13px;
    font-weight: 500;
  }

  /* ---------- Testimonials Mobile ---------- */
  .quote {
    padding: 20px;
    margin-top: 14px;
    border-radius: 16px;
    background: #fff;
    border: 1px solid #e6eaf0;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
  }

  .quote .mark {
    font-size: 32px;
    color: #0099c4;
  }

  .quote p {
    font-size: 14px;
    color: #3c4654;
    margin: 12px 0 16px;
    line-height: 1.6;
    font-weight: 500;
  }

  .person {
    gap: 12px;
    align-items: center;
  }

  .avatar {
    width: 48px;
    height: 48px;
    font-size: 13px;
    border-radius: 8px;
  }

  .person .nm {
    font-size: 14px;
    font-weight: 700;
    color: #0f1728;
  }

  .person .ti {
    font-size: 12px;
    color: #5b6472;
  }

  .vid {
    margin-top: 14px;
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
  }

  .vid .vthumb {
    height: 200px;
  }

  .vid .play {
    width: 56px;
    height: 56px;
    font-size: 18px;
  }

  .vid .dur {
    font-size: 11px;
    bottom: 10px;
    right: 10px;
  }

  .vid .vmeta {
    padding: 14px 16px;
  }

  .vid .vlogo {
    width: 44px;
    height: 44px;
    font-size: 9px;
    border-radius: 6px;
  }

  .vid .vname {
    font-size: 14px;
    font-weight: 700;
    color: #0f1728;
  }

  .vid .vsub {
    font-size: 12px;
    color: #5b6472;
  }

  .testi-cta {
    margin-top: 20px;
  }

  .testi-cta .btn {
    width: auto;
  }

  /* ---------- Enterprise Mobile ---------- */
  .ei {
    padding: 48px 20px;
    background: linear-gradient(180deg, #fbfdff, #ffffff);
  }

  .ei .section-head {
    text-align: center;
    margin-bottom: 32px;
  }

  .ei h2 {
    font-size: 28px;
    line-height: 1.3;
    font-weight: 700;
    margin-bottom: 16px;
  }

  .ei .pillq {
    font-size: 11px;
    background: #ecf9fc;
    color: #0099c4;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 10px;
  }

  .ei .q {
    font-size: 18px;
    font-weight: 700;
    color: #0f1728;
    margin-bottom: 18px;
  }

  .ei .who {
    margin-bottom: 18px;
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 12px;
    padding: 14px;
  }

  .ei .sm {
    width: 44px;
    height: 44px;
    font-size: 11px;
    border-radius: 6px;
  }

  .ei .who .nm b {
    font-size: 14px;
    font-weight: 700;
    color: #0f1728;
  }

  .ei .who .ti {
    font-size: 12px;
    color: #5b6472;
  }

  .ei .stats {
    gap: 20px;
  }

  .ei .stat b {
    font-size: 22px;
    font-weight: 700;
    color: #0099c4;
  }

  .ei .stat p {
    font-size: 13px;
    color: #5b6472;
  }

  /* ---------- Hide Desktop Elements ---------- */
  .cap-pin-wrap,
  .thread-rail,
  .cap-pin {
    display: none !important;
  }

  .hero-thread-bg,
  .hero-visual,
  .hero-section {
    display: none !important;
  }

  .cap-stage-right {
    display: none !important;
  }

  .pin-wrap {
    display: none !important;
  }

  /* ---------- Hero Improvements ---------- */
  .hero {
    padding: 32px 20px 40px;
  }

  .hero h1 {
    font-size: 32px;
    line-height: 1.25;
    font-weight: 700;
    margin-bottom: 16px;
  }

  .hero-left {
    max-width: 100%;
  }

  .hero-ctas {
    max-width: 100%;
  }

  .hero .btn {
    min-height: 48px;
  }

  /* ---------- Footer Mobile ---------- */
  footer {
    padding: 32px 20px;
    font-size: 12px;
    background: #f6f9fb;
    /* border-top: 1px solid #e6eaf0; */
  }

  footer .footer-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  footer .col h4 {
    font-size: 14px;
    font-weight: 700;
    color: #0f1728;
    margin-bottom: 12px;
  }

  footer .col a {
    font-size: 13px;
    color: #5b6472;
    line-height: 1.8;
  }

  footer .col a:hover {
    color: #0099c4;
  }

  footer .copy {
    font-size: 12px;
    color: #7b8594;
    border-top: 1px solid #e6eaf0;
    padding-top: 16px;
    margin-top: 20px;
  }
  .head h2 {
    font-size: 24px;
    line-height: 27px;
  }
  .head p {
    font-size: 14px;
  }
  .logo-grid {
    margin-bottom: 21px;
    margin-top: 0px;
  }
}

/* Extra small devices */
@media (max-width: 480px) {
  iframe {
    height: 152px;
  }
  .head h2 {
    font-size: 24px;
    line-height: 27px;
  }
  .head p {
    font-size: 14px;
  }
  .container {
    padding: 0 12px;
  }

  section {
    padding: 32px 12px;
  }

  .btn {
    padding: 10px 16px;
    font-size: 13px;
  }

  .cap-stepper.mobile {
    padding: 0 12px;
  }

  .cap-slide-mobile {
    padding: 0 12px;
  }

  .story-track-mobile {
    margin: 16px -12px;
    padding: 0 12px;
  }

  /* ---------- Customer Stories Slider Mobile ---------- */
  .stories.mobile {
    background: #f9fafc;
    padding: 40px 0;
  }

  .story-slider-mobile {
    margin: 0 0px;
    padding: 0 20px;
    position: relative;
  }

  .story-card-mobile {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
    animation: slideUp 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }

  @keyframes slideUp {
    from {
      opacity: 0.9;
      transform: translateY(8px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .story-image-mobile {
    width: 100%;
    height: 240px;
    overflow: hidden;
    background: #e6eaf0;
  }

  .story-image-mobile img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .story-info-mobile {
    padding: 24px;
    border-bottom: 1px solid #e6eaf0;
  }

  .story-segment-mobile {
    font-size: 11px;
    font-weight: 700;
    color: #7b8594;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 12px;
  }

  .story-tags-mobile {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
  }

  .story-tag-mobile {
    font-size: 11px;
    font-weight: 700;
    color: #0099c4;
    background: #ecf9fc;
    padding: 6px 12px;
    border-radius: 8px;
  }

  .story-metric-mobile {
    font-size: 42px;
    font-weight: 700;
    color: #0099c4;
    padding: 9px 5px 0px 21px;
    line-height: 1.2;
  }
  .story-metric-box {
    display: flex;
    height: 76px;
  }
  .story-desc-mobile {
    font-size: 11px;
    color: #5b6472;
    line-height: 1.6;
    padding: 10px 10px;
    margin: 0;
  }

  .story-cta-link-mobile {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    border-top: 1px solid #e6eaf0;
  }

  .read-study-link {
    font-size: 14px;
    font-weight: 600;
    color: #0099c4;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 6px;
  }

  .read-study-link:hover {
    color: #007a99;
  }

  .read-time-mobile {
    font-size: 12px;
    color: #7b8594;
    font-weight: 600;
  }

  .story-counter-mobile {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    font-weight: 600;
    color: #0099c4;
    margin-top: 20px;
    padding: 0 20px;
    gap: 19px;
  }

  .story-brand-mobile {
    font-weight: 700;
    color: #0f1728;
  }

  .story-dots-mobile {
    display: flex;
    gap: 8px;
    justify-content: center;
    margin-top: 20px;
    padding: 0 20px;
  }

  .dot-mobile {
    width: 50px;
    height: 8px;
    border-radius: 4px;
    border: none;
    background: #d0d6e0;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 0;
  }

  .dot-mobile.active {
    width: 50px;
    border-radius: 4px;
    background: #0099c4;
  }

  .story-ctas-mobile {
    display: flex;
    flex-direction: row-reverse;
    gap: 12px;
    margin-top: 28px;
    padding: 0 20px 20px;
  }

  .story-ctas-mobile a {
    padding: 14px 20px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 15px;
    text-decoration: none;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
  }

  .story-ctas-mobile .btn-primary {
    background: linear-gradient(135deg, #00cec6 0%, #0099c4 100%);
    color: #fff;
    height: max-content;
  }

  .story-ctas-mobile .btn-secondary {
    background: #fff;
    color: #0099c4;
    border: 1.5px solid #bfe6f1;
  }

  /* ---------- Head-to-Head Mobile ---------- */
  .h2h.mobile {
    padding: 48px 0px;
    background: linear-gradient(180deg, #fbfdff, #ffffff);
  }

  .h2h.mobile .section-head {
    text-align: center;
    margin-bottom: 32px;
  }

  .h2h.mobile h2 {
    font-size: 24px;
    line-height: 1.3;
    margin-bottom: 16px;
  }

  .h2h.mobile p {
    font-size: 14px;
    color: #5b6472;
    line-height: 1.6;
    max-width: 100%;
  }

  .h2h-toggle-mobile {
    display: flex;
    gap: 8px;
    margin-bottom: 32px;
    background: #0f172a;
    padding: 4px;
    border-radius: 10px;
    width: 100%;
  }

  .h2h-toggle-mobile .toggle-btn {
    flex: 1;
    padding: 10px 16px;
    border: none;
    background: transparent;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    cursor: default;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
  }

  .h2h-toggle-mobile .toggle-btn .dot-indicator {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #00cec6;
    display: none;
  }

  .h2h-toggle-mobile .toggle-btn.active {
    color: #fff;
    background: rgba(0, 206, 198, 0.14);
    font-weight: 700;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.08);
  }

  .h2h-toggle-mobile .toggle-btn.active .dot-indicator {
    display: block;
  }

  .h2h-comparison-mobile {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 32px;
  }

  .h2h-item-mobile {
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 12px;
    /* padding: 20px; */
    animation: slideUp 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .h2h-item-mobile .feature-name {
    font-size: 16px;
    font-weight: 700;
    color: #0f1728;
    margin-top: 0;
    padding: 20px;
    margin-bottom: 0;
  }

  .comparison-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .comparison-row .column {
    padding: 12px;
    background: #f9fafc;
    border-radius: 8px;
  }

  .comparison-row .column-badge {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
  }

  .comparison-row .column-badge.wfx-badge {
    color: #0099c4;
  }

  .comparison-row .column-badge.generic-badge {
    color: #d0d6e0;
  }
  .comparison-row .column-badge.generic-badge .badge-icon {
    background: #dcdcdc;
  }
  .column.wfx-column {
    background: #f1fbfb;
    border-right: 3px solid #e6eaf0;
  }
  .comparison-row .column-badge .badge-icon {
    width: 20px;
    height: 20px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 800;
    background: linear-gradient(135deg, #00cec6 0%, #0099c4 100%);
    color: #fff;
  }

  .comparison-row .column-badge .badge-label {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
  }

  .comparison-row .column p {
    font-size: 12px;
    color: #5b6472;
    line-height: 1.5;
    margin: 0;
  }

  .h2h-cta-mobile {
    display: flex;
    gap: 12px;
    flex-direction: column;
  }

  .h2h-cta-mobile a {
    padding: 14px 20px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
  }

  .h2h-cta-mobile .btn-primary {
    background: linear-gradient(135deg, #00cec6 0%, #0099c4 100%);
    color: #fff;
  }
  .integration .type,
  .ai-ribbon .type {
    border-radius: 9px 9px 9px 9px;
    top: -7px;
    right: 3px;
    font-size: 9px;
  }
  .testi-av {
    width: 66px;
    height: 58px;
  }
  .testi-card.video {
    padding: 0;
  }
  .testi-video {
    border-radius: 18px 18px 0px 0px;
  }
  .testi-card.video .testi-meta {
    padding: 20px;
  }
}
