.site-header,
.site-footer,
.article-shell,
.hero-card,
.book-feature,
.list-hero,
.about-card,
.section-card,
.research-card,
.glimpse-card,
.project-card,
.download-card,
.case-card,
.faq-item,
.card-s,
.policy,
.disclaimer {
  --mobile-space-xs: 0.5rem;
  --mobile-space-sm: 0.75rem;
  --mobile-space-md: 1rem;
  --mobile-space-lg: 1.25rem;
}

@media (max-width: 991.98px) {
  .btn,
  .btn-sm,
  .nav-link,
  .footer-link,
  .sk-chatbot__chip,
  .sk-chatbot__action {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .btn-sm {
    padding: 0.45rem 0.75rem;
    font-size: 0.82rem;
  }

  .container.py-5,
  .container.pt-5,
  .container.pb-5 {
    padding-top: 1.8rem !important;
    padding-bottom: 1.8rem !important;
  }

  h1,
  .h1 {
    font-size: clamp(1.35rem, 4vw, 1.9rem) !important;
    line-height: 1.3 !important;
  }

  h2,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6 {
    line-height: 1.35 !important;
  }

  p,
  li,
  .small,
  .tagline,
  .project-desc,
  .glimpse-excerpt,
  .article-body p,
  .article-body li {
    line-height: 1.6 !important;
  }
}

@media (max-width: 767.98px) {
  .hero-card,
  .book-feature,
  .list-hero,
  .about-card,
  .article-shell,
  .section-card,
  .project-card,
  .glimpse-card,
  .download-card,
  .case-card,
  .faq-item {
    border-radius: 12px !important;
  }

  .hero-card,
  .book-feature,
  .about-card,
  .article-shell,
  .list-hero {
    padding: var(--mobile-space-lg) !important;
  }

  .section-card,
  .project-card,
  .glimpse-card a,
  .download-card,
  .case-card,
  .faq-item,
  .card-s {
    padding: var(--mobile-space-md) !important;
  }

  .row.g-4,
  .row.g-3 {
    --bs-gutter-y: 0.9rem;
  }

  .footer-nav,
  .d-flex.flex-wrap.gap-2 {
    row-gap: 0.55rem !important;
  }

  .table-responsive {
    border-radius: 10px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }

  .site-footer details summary {
    cursor: pointer;
    list-style: none;
    border: 1px solid rgba(155, 168, 206, 0.3);
    border-radius: 8px;
    padding: 0.45rem 0.65rem;
    font-size: 0.83rem;
    color: #d8e1ff;
    background: rgba(15, 23, 48, 0.55);
  }

  .site-footer details summary::-webkit-details-marker {
    display: none;
  }

  .site-footer details[open] summary {
    border-color: rgba(52, 211, 255, 0.45);
  }

  .site-footer details + details {
    margin-top: 0.5rem;
  }
}

@media (max-width: 991.98px) {
  body.page-articles .list-hero .btn {
    width: 100%;
    justify-content: center;
  }

  body.page-articles .article-card-link {
    padding: 1rem 1rem;
  }

  body.page-articles .article-card-title {
    font-size: 0.98rem;
  }

  body.page-research .filter-btn {
    min-height: 38px;
    padding: 0.3rem 0.62rem;
  }

  body.page-research .research-card {
    padding: 1rem;
  }
}

@media (max-width: 767.98px) {
  body.page-research #research-grid {
    row-gap: 0.85rem;
  }

  body.page-start-here .card-s {
    display: flex;
    flex-direction: column;
  }

  body.page-start-here .start-link {
    width: 100%;
  }
}
