/* Mobile-only navigation and footer fixes shared by all pages. */
@media (max-width: 768px) {
  body.mobile-menu-open {
    overflow: hidden;
  }

  .navbar {
    min-height: 60px;
    height: auto;
    align-items: center;
    flex-wrap: wrap;
  }

  .nav-logo {
    flex: 1 1 auto;
  }

  .nav-mobile-toggle {
    display: flex !important;
    flex-shrink: 0;
    margin-left: auto;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 120;
  }

  .nav-mobile-toggle span {
    display: block !important;
    width: 24px !important;
    height: 2px !important;
    border-radius: 999px;
    background: #f8fafc !important;
  }

  .geo-page .nav-mobile-toggle {
    position: fixed !important;
    top: 14px !important;
    right: 16px !important;
    left: auto !important;
    display: flex !important;
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 12px !important;
    background: rgba(10, 14, 26, 0.78) !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.28) !important;
    backdrop-filter: blur(16px);
    z-index: 3000 !important;
  }

  .geo-page .nav-mobile-toggle span {
    background: #ffffff !important;
  }

  .nav-mobile-toggle.active span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }

  .nav-mobile-toggle.active span:nth-child(2) {
    opacity: 0;
  }

  .nav-mobile-toggle.active span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }

  .nav-center {
    display: none !important;
    position: absolute !important;
    top: 100%;
    left: 50% !important;
    right: auto !important;
    width: min(92vw, 360px) !important;
    transform: translateX(-50%) !important;
    padding: 10px 12px 14px !important;
    flex-direction: column;
    align-items: center;
    gap: 4px !important;
    background: rgba(10, 14, 26, 0.97) !important;
    border: 1px solid rgba(124, 58, 237, 0.22) !important;
    border-radius: 16px;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.32);
    backdrop-filter: blur(20px);
  }

  .nav-center.mobile-open {
    display: flex !important;
  }

  .nav-center > a,
  .nav-center .nav-dropdown {
    width: 100%;
    display: flex !important;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 12px 10px !important;
    font-size: 15px !important;
    line-height: 1.4;
    border-radius: 10px;
  }

  .nav-center > a::after,
  .nav-center .nav-dropdown::after {
    display: none !important;
  }

  .nav-center .nav-dropdown {
    flex-direction: column;
    cursor: pointer;
  }

  .nav-center .nav-dropdown > .arrow {
    margin-left: 6px;
  }

  .nav-dropdown-menu {
    position: static !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
    display: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    padding: 6px 0 2px !important;
    margin-top: 4px;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }

  .nav-dropdown.dropdown-open .nav-dropdown-menu {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    max-height: 520px !important;
    opacity: 1 !important;
    overflow: visible !important;
  }

  .nav-dropdown.dropdown-open .arrow {
    transform: rotate(180deg);
  }

  .nav-dropdown-menu .nav-dropdown-item {
    width: 100%;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 10px 12px !important;
    margin: 0 !important;
    text-align: center;
    border-radius: 10px !important;
    background: rgba(124, 58, 237, 0.08) !important;
  }

  .nav-dropdown-menu .item-icon {
    display: none !important;
  }

  .nav-dropdown-menu .item-text {
    align-items: center !important;
    text-align: center !important;
  }

  .nav-dropdown-menu .item-title {
    font-size: 14px !important;
  }

  .nav-dropdown-menu .item-desc {
    font-size: 11px !important;
    margin-top: 2px;
  }

  .nav-right {
    position: fixed !important;
    top: 17px !important;
    right: 64px !important;
    left: auto !important;
    display: flex !important;
    width: 38px !important;
    height: 38px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    z-index: 2999 !important;
  }

  .nav-right .theme-label,
  .nav-right > a,
  .nav-right > .btn-primary,
  .nav-right > .btn-outline {
    display: none !important;
  }

  .nav-right .theme-toggle,
  .nav-right .nav-theme {
    display: flex !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 10px !important;
    background: rgba(10, 14, 26, 0.72) !important;
    color: #ffffff !important;
    font-size: 16px !important;
    line-height: 1 !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22) !important;
    backdrop-filter: blur(14px);
    transform: none !important;
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease !important;
    -webkit-text-fill-color: currentColor !important;
  }

  .nav-right .theme-toggle:hover,
  .nav-right .theme-toggle:active,
  .nav-right .nav-theme:hover,
  .nav-right .nav-theme:active {
    transform: none !important;
    background: rgba(124, 58, 237, 0.2) !important;
  }

  /* Home page mobile refinements only. */
  .hero {
    height: 50vh !important;
    min-height: 250px !important;
  }

  .hero-content {
    height: 100% !important;
    padding: 0 18px !important;
  }

  .hero-slider {
    height: 50vh !important;
    min-height: 250px !important;
    width: calc(100% + 36px) !important;
    margin-left: -18px !important;
    margin-right: -18px !important;
  }

  .hero-slide-inner {
    justify-content: center !important;
    padding: 58px 18px 30px !important;
  }

  .hero-text {
    max-width: 94vw !important;
  }

  .hero-badge {
    padding: 5px 12px !important;
    margin-bottom: 8px !important;
    font-size: 10px !important;
    line-height: 1.3 !important;
  }

  .hero h2 {
    font-size: 22px !important;
    line-height: 1.18 !important;
    margin-bottom: 8px !important;
  }

  .hero-subtitle {
    font-size: 12px !important;
    line-height: 1.45 !important;
    margin-bottom: 6px !important;
  }

  .hero-tags {
    gap: 5px !important;
    margin-bottom: 10px !important;
  }

  .hero-tag {
    padding: 3px 8px !important;
    font-size: 10px !important;
  }

  .hero-buttons {
    gap: 8px !important;
  }

  .hero-buttons .btn-primary,
  .hero-buttons .btn-outline {
    padding: 8px 14px !important;
    font-size: 12px !important;
  }

  .hero-slider-dots {
    bottom: 12px !important;
    gap: 7px !important;
  }

  .hero-dot {
    width: 24px !important;
    height: 3px !important;
  }

  .hero-dot.active {
    width: 34px !important;
  }

  .hero-slider-arrow {
    display: none !important;
  }

  .products {
    padding: 26px 0 !important;
  }

  .products-header {
    margin-bottom: 12px !important;
  }

  .products .section-label {
    justify-content: center !important;
    margin-bottom: 6px !important;
    font-size: 10px !important;
    letter-spacing: 2px !important;
  }

  .products .section-label::before {
    width: 22px !important;
  }

  .products .section-title {
    font-size: 22px !important;
    margin-bottom: 6px !important;
  }

  .products .section-desc {
    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .products-tabs {
    gap: 5px !important;
    margin-bottom: 12px !important;
  }

  .product-tab {
    padding: 6px 9px !important;
    font-size: 11px !important;
    border-radius: 16px !important;
  }

  .products-panels {
    min-height: 0 !important;
  }

  .product-card {
    flex-direction: column !important;
    gap: 10px !important;
    padding: 10px !important;
    border-radius: 16px !important;
  }

  .product-card-visual {
    width: 100% !important;
    height: 42vh !important;
    max-height: 300px !important;
    min-height: 220px !important;
    border-radius: 12px !important;
  }

  .product-card-info {
    width: 100% !important;
    text-align: center !important;
  }

  .product-card-info h3 {
    font-size: 17px !important;
    margin-bottom: 4px !important;
  }

  .product-card-info p {
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 11px !important;
    line-height: 1.45 !important;
    margin-bottom: 8px !important;
  }

  .product-features {
    justify-content: center !important;
    gap: 5px !important;
    margin-bottom: 8px !important;
  }

  .product-feature-tag {
    padding: 3px 7px !important;
    font-size: 10px !important;
  }

  .product-card-info > div[style*="display:flex"] {
    justify-content: center !important;
    margin-top: 0 !important;
  }

  .product-link {
    font-size: 12px !important;
  }

  .product-card-info .btn-primary {
    padding: 6px 14px !important;
    font-size: 11px !important;
  }

  .advantages {
    padding: 24px 0 !important;
  }

  .advantages-header {
    margin-bottom: 12px !important;
  }

  .advantages .section-label {
    justify-content: center !important;
    margin-bottom: 6px !important;
    font-size: 10px !important;
    letter-spacing: 2px !important;
  }

  .advantages .section-label::before {
    width: 22px !important;
  }

  .advantages .section-title {
    font-size: 20px !important;
    line-height: 1.25 !important;
    margin-bottom: 0 !important;
  }

  .advantages-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 7px !important;
  }

  .advantage-card {
    min-width: 0 !important;
    padding: 0 !important;
    border-radius: 12px !important;
  }

  .advantage-card .card-body {
    padding: 10px 6px !important;
  }

  .advantage-card h4 {
    font-size: 11px !important;
    line-height: 1.28 !important;
    margin-bottom: 5px !important;
  }

  .advantage-card p {
    font-size: 9px !important;
    line-height: 1.35 !important;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .advantages .cases-more {
    margin-top: 12px !important;
    gap: 8px !important;
  }

  .advantages .cases-more .btn-outline,
  .advantages .cases-more .btn-primary {
    padding: 8px 12px !important;
    font-size: 11px !important;
  }

  /* Compact mobile detail pages: advantages, scenarios, cases, about. */
  .page-header {
    padding: 82px 0 28px !important;
  }

  .page-header .section-label,
  .company-intro .section-label,
  .timeline-header .section-label,
  .values-header .section-label,
  .partners-header .section-label {
    justify-content: center !important;
    margin-bottom: 6px !important;
    font-size: 10px !important;
    letter-spacing: 2px !important;
  }

  .page-header .section-label::before,
  .company-intro .section-label::before,
  .timeline-header .section-label::before,
  .values-header .section-label::before,
  .partners-header .section-label::before {
    width: 22px !important;
  }

  .page-header .section-title,
  .adv-detail-section .section-title,
  .scenario-section .section-title,
  .company-intro .section-title,
  .timeline-section .section-title,
  .values-section .section-title,
  .partners-section .section-title,
  .cases-list-section .section-title {
    font-size: 24px !important;
    line-height: 1.24 !important;
    margin-bottom: 8px !important;
  }

  .page-header .section-desc {
    font-size: 13px !important;
    line-height: 1.55 !important;
  }

  .adv-overview,
  .industry-overview,
  .cases-list-section,
  .company-intro,
  .timeline-section,
  .stats-section,
  .values-section,
  .partners-section {
    padding: 28px 0 !important;
  }

  .adv-overview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .adv-card {
    border-radius: 12px !important;
  }

  .adv-card .card-body {
    padding: 14px 10px !important;
  }

  .adv-card h4 {
    font-size: 13px !important;
    line-height: 1.35 !important;
    margin-bottom: 6px !important;
  }

  .adv-card p {
    font-size: 11px !important;
    line-height: 1.45 !important;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .adv-detail-section,
  .scenario-section {
    padding: 30px 0 !important;
  }

  .adv-detail-inner,
  .adv-detail-inner.reverse,
  .scenario-inner,
  .scenario-inner.reverse,
  .company-intro-inner {
    gap: 14px !important;
  }

  .adv-detail-visual,
  .scenario-visual,
  .company-intro-visual {
    width: 100% !important;
  }

  .adv-detail-visual {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: min(100vw - 16px, 520px) !important;
    max-width: min(100vw - 16px, 520px) !important;
    flex: 0 0 auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-self: center !important;
    padding: 6px !important;
    border-radius: 26px !important;
    overflow: hidden !important;
    background: rgba(255, 255, 255, 0.07) !important;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.26) !important;
  }

  .adv-detail-visual img {
    height: auto !important;
    max-height: 360px !important;
    width: 100% !important;
    max-width: 100% !important;
    object-fit: contain !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    display: block !important;
    margin: 0 auto !important;
    clip-path: inset(0 round 20px);
  }

  .scenario-visual img,
  .company-intro-visual img {
    height: 180px !important;
    object-fit: cover !important;
    border-radius: 14px !important;
  }

  .adv-detail-number {
    font-size: 32px !important;
    margin-bottom: 2px !important;
  }

  .adv-detail-text h3,
  .scenario-text h3,
  .company-intro-text h3 {
    font-size: 19px !important;
    line-height: 1.35 !important;
    margin-bottom: 8px !important;
  }

  .adv-detail-text p,
  .scenario-text .scenario-desc,
  .company-intro-text p {
    font-size: 12px !important;
    line-height: 1.55 !important;
    margin-bottom: 10px !important;
  }

  .adv-feature-list,
  .scenario-points {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .adv-feature-item,
  .scenario-point {
    min-width: 0 !important;
    align-items: flex-start !important;
    padding: 10px !important;
    gap: 8px !important;
    border-radius: 10px !important;
  }

  .adv-feature-icon,
  .scenario-point-icon {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    font-size: 14px !important;
  }

  .scenario-point-text h5 {
    font-size: 13px !important;
    margin-bottom: 2px !important;
  }

  .adv-feature-item span,
  .scenario-point-text {
    min-width: 0 !important;
  }

  .adv-feature-item span {
    font-size: 11px !important;
    line-height: 1.35 !important;
  }

  .scenario-point-text p {
    font-size: 11px !important;
    line-height: 1.4 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .industry-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .industry-card {
    border-radius: 12px !important;
  }

  .industry-img {
    height: 118px !important;
  }

  .industry-card h4 {
    padding: 10px 8px !important;
    font-size: 13px !important;
  }

  .scenario-icon {
    width: 42px !important;
    height: 42px !important;
    font-size: 20px !important;
    margin-bottom: 8px !important;
  }

  .scenario-products {
    gap: 6px !important;
    margin-top: 8px !important;
  }

  .scenario-product-tag {
    padding: 4px 8px !important;
    font-size: 10px !important;
  }

  .cases-list-grid {
    gap: 12px !important;
  }

  .case-list-item {
    display: grid !important;
    grid-template-columns: 110px minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: stretch !important;
    padding: 10px !important;
    border-radius: 12px !important;
  }

  .case-list-image {
    width: 110px !important;
    height: 112px !important;
    border-radius: 10px !important;
  }

  .case-list-content {
    padding: 0 !important;
    min-width: 0 !important;
  }

  .case-list-tag {
    padding: 3px 8px !important;
    font-size: 10px !important;
    margin-bottom: 5px !important;
  }

  .case-list-content h3 {
    font-size: 15px !important;
    line-height: 1.32 !important;
    margin-bottom: 5px !important;
  }

  .case-list-content p {
    font-size: 11px !important;
    line-height: 1.42 !important;
    margin-bottom: 7px !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .case-list-meta {
    gap: 5px !important;
    margin-bottom: 0 !important;
  }

  .case-list-meta span {
    font-size: 10px !important;
    padding: 3px 6px !important;
  }

  .case-list-arrow {
    display: none !important;
  }

  .company-intro-text {
    text-align: center !important;
  }

  .company-badge {
    right: 12px !important;
    bottom: -10px !important;
    padding: 10px 14px !important;
    border-radius: 12px !important;
  }

  .company-badge .badge-number {
    font-size: 26px !important;
  }

  .company-badge .badge-text {
    font-size: 11px !important;
  }

  .timeline-header,
  .values-header,
  .partners-header {
    margin-bottom: 18px !important;
  }

  .timeline {
    padding-left: 6px !important;
  }

  .timeline-item {
    margin-bottom: 16px !important;
  }

  .timeline-item:nth-child(odd) .timeline-content,
  .timeline-item:nth-child(even) .timeline-content {
    padding-left: 42px !important;
    padding-right: 0 !important;
  }

  .timeline::before {
    left: 14px !important;
  }

  .timeline-dot {
    left: 14px !important;
    width: 14px !important;
    height: 14px !important;
  }

  .timeline-year {
    font-size: 22px !important;
    margin-bottom: 2px !important;
  }

  .timeline-title {
    font-size: 14px !important;
    margin-bottom: 2px !important;
  }

  .timeline-desc {
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  .stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .stat-number {
    font-size: 28px !important;
  }

  .stat-label {
    font-size: 11px !important;
  }

  .values-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .value-card {
    padding: 14px 10px !important;
    border-radius: 12px !important;
  }

  .value-icon {
    font-size: 24px !important;
    margin-bottom: 8px !important;
  }

  .value-card h4 {
    font-size: 14px !important;
    margin-bottom: 5px !important;
  }

  .value-card p {
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  .partners-scroll {
    gap: 12px !important;
  }

  .partner-logo {
    width: 92px !important;
    height: 40px !important;
    font-size: 12px !important;
    border-radius: 10px !important;
  }

  /* Compact mobile product detail pages. */
  .detail-hero,
  .geo-hero,
  .hs-hero,
  .dev-hero {
    min-height: auto !important;
    height: auto !important;
    padding: 84px 0 28px !important;
  }

  .detail-hero-content,
  .geo-hero-content,
  .hs-hero-content,
  .dev-hero-content {
    padding: 0 18px !important;
  }

  .detail-hero-content h1,
  .geo-hero-content h1,
  .hs-hero h1,
  .dev-hero h1 {
    font-size: 26px !important;
    line-height: 1.22 !important;
    margin-bottom: 8px !important;
  }

  .detail-hero-content p,
  .geo-hero-content .hero-desc,
  .hs-hero-desc,
  .dev-hero-desc {
    font-size: 12px !important;
    line-height: 1.55 !important;
    margin-bottom: 12px !important;
  }

  .detail-hero-content .hero-tags,
  .geo-hero-stats,
  .hs-hero-stats,
  .dev-hero-stats {
    gap: 8px !important;
    margin: 12px 0 !important;
  }

  .geo-hero-stats {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    width: 100% !important;
  }

  .detail-hero-content .hero-tag,
  .geo-stat-card,
  .hs-hero-stat,
  .dev-hero-stat {
    padding: 8px 10px !important;
    min-width: 0 !important;
  }

  .geo-stat-card {
    width: 100% !important;
    min-width: 0 !important;
    padding: 8px 4px !important;
  }

  .geo-stat-number,
  .hs-hero-stat-num,
  .dev-hero-stat .stat-number {
    font-size: 22px !important;
  }

  .geo-stat-label,
  .hs-hero-stat-label,
  .dev-hero-stat .stat-label {
    font-size: 10px !important;
  }

  .geo-stat-label {
    line-height: 1.25 !important;
  }

  .detail-hero-image {
    margin-top: 14px !important;
  }

  .detail-hero-content {
    text-align: center !important;
  }

  .detail-hero-content > a.btn-primary {
    display: inline-flex !important;
    width: calc(33.333% - 6px) !important;
    min-width: 0 !important;
    height: 34px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 4px !important;
    margin: 0 0 0 8px !important;
    border-radius: 8px !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
    letter-spacing: 0 !important;
    vertical-align: top;
  }

  .detail-hero-content > a.btn-primary:first-of-type {
    margin-left: 0 !important;
  }

  .detail-hero-image img,
  .detail-hero-image video {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    border-radius: 14px !important;
  }

  .ability-section,
  .advantage-section,
  .video-showcase-section,
  .geo-what-section,
  .geo-timeline-section,
  .geo-advantages-section,
  .geo-industry-section,
  .geo-cases-section,
  .geo-faq-section,
  .hs-play,
  .hs-process,
  .hs-cases,
  .hs-why,
  .hs-pricing,
  .tech-section,
  .process-section,
  .industry-section,
  .cases-section {
    padding: 30px 0 !important;
  }

  .ability-header,
  .advantage-header,
  .video-showcase-header,
  .geo-timeline-header,
  .geo-advantages-header,
  .geo-industry-header,
  .geo-cases-header,
  .geo-faq-header,
  .hs-play-header,
  .hs-process-header,
  .hs-cases-header,
  .hs-why-header,
  .hs-pricing-header,
  .tech-header,
  .process-header,
  .industry-header,
  .cases-header {
    margin-bottom: 16px !important;
  }

  .ability-section .section-title,
  .advantage-section .section-title,
  .video-showcase-section .section-title,
  .geo-what-text h2,
  .geo-timeline-section .section-title,
  .geo-advantages-section .section-title,
  .geo-industry-section .section-title,
  .geo-cases-section .section-title,
  .geo-faq-section .section-title,
  .hs-play .section-title,
  .hs-process .section-title,
  .hs-cases .section-title,
  .hs-why .section-title,
  .hs-pricing .section-title,
  .tech-section .section-title,
  .process-section .section-title,
  .industry-section .section-title,
  .cases-section .section-title {
    font-size: 22px !important;
    line-height: 1.28 !important;
    margin-bottom: 8px !important;
  }

  .ability-header .section-desc,
  .advantage-header .section-desc,
  .geo-what-text .geo-desc,
  .geo-timeline-header .section-desc,
  .geo-advantages-header .section-desc,
  .geo-industry-header .section-desc,
  .geo-cases-header .section-desc,
  .geo-faq-header .section-desc,
  .hs-play-header .section-desc,
  .hs-process-header .section-desc,
  .hs-cases-header .section-desc,
  .hs-why-header .section-desc,
  .hs-pricing-header .section-desc,
  .tech-header .section-desc,
  .process-header .section-desc,
  .industry-header .section-desc,
  .cases-header .section-desc {
    font-size: 12px !important;
    line-height: 1.55 !important;
  }

  .ability-item,
  .ability-item.reverse {
    gap: 12px !important;
    margin-bottom: 18px !important;
  }

  .ability-visual {
    height: auto !important;
    min-height: 0 !important;
    border-radius: 14px !important;
  }

  .ability-visual img {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
  }

  .ability-number {
    font-size: 30px !important;
    margin-bottom: 2px !important;
  }

  .ability-title {
    font-size: 18px !important;
    line-height: 1.35 !important;
    margin-bottom: 8px !important;
  }

  .ability-subtitle {
    font-size: 12px !important;
    margin-bottom: 8px !important;
  }

  .ability-list {
    gap: 6px !important;
  }

  .ability-list li {
    font-size: 12px !important;
    line-height: 1.45 !important;
    padding-left: 18px !important;
    margin-bottom: 5px !important;
  }

  .advantage-grid,
  .geo-advantages-grid,
  .hs-play-grid,
  .tech-grid,
  .tech-showcase-grid,
  .cases-grid,
  .geo-cases-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .advantage-card,
  .geo-advantage-card,
  .hs-play-card,
  .tech-card,
  .tech-showcase-item,
  .case-card,
  .geo-case-card {
    padding: 14px 10px !important;
    border-radius: 12px !important;
  }

  .advantage-card-icon,
  .geo-advantage-icon,
  .hs-play-card-icon,
  .tech-card-icon,
  .geo-case-icon {
    font-size: 24px !important;
    margin-bottom: 8px !important;
  }

  .advantage-card-title,
  .advantage-card h4,
  .geo-advantage-card h4,
  .hs-play-card h3,
  .tech-card h3,
  .tech-showcase-info h3,
  .case-card h4,
  .geo-case-card h4 {
    font-size: 14px !important;
    line-height: 1.35 !important;
    margin-bottom: 6px !important;
  }

  .advantage-card p,
  .geo-advantage-card p,
  .hs-play-card > p,
  .tech-showcase-info p,
  .geo-case-card .case-industry,
  .geo-case-card .case-result {
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  .tech-showcase-img,
  .case-card-img {
    height: 96px !important;
    border-radius: 10px !important;
  }

  .video-showcase-btns,
  .cta-buttons,
  .geo-cta-buttons,
  .hs-cta-buttons,
  .dev-hero-buttons,
  .geo-hero-buttons,
  .hs-hero-buttons {
    gap: 8px !important;
    flex-wrap: wrap !important;
  }

  .video-showcase-btns .btn-primary,
  .video-showcase-btns .btn-outline,
  .cta-buttons .btn-primary,
  .cta-buttons .btn-outline,
  .geo-cta-buttons .btn-primary,
  .geo-cta-buttons .btn-outline,
  .hs-cta-buttons .btn-primary,
  .hs-cta-buttons .btn-outline,
  .dev-hero-buttons .btn-primary,
  .dev-hero-buttons .btn-outline,
  .geo-hero-buttons .btn-primary,
  .geo-hero-buttons .btn-outline,
  .hs-hero-buttons .btn-primary,
  .hs-hero-buttons .btn-outline {
    padding: 8px 14px !important;
    font-size: 12px !important;
  }

  .video-showcase-track {
    gap: 12px !important;
  }

  .video-showcase-item,
  .video-showcase-player {
    width: 150px !important;
  }

  .video-showcase-player {
    height: 266px !important;
    border-radius: 12px !important;
  }

  .video-showcase-label {
    font-size: 11px !important;
    margin-top: 6px !important;
  }

  .geo-what-layout,
  .industry-panel-inner {
    gap: 14px !important;
  }

  .geo-compare-cards,
  .geo-what-visual {
    gap: 8px !important;
  }

  .geo-compare-card,
  .geo-visual-box,
  .hs-why-panel,
  .hs-pricing-card,
  .industry-panel-inner,
  .process-timeline-item,
  .geo-timeline-card,
  .geo-faq-item {
    padding: 14px 10px !important;
    border-radius: 12px !important;
  }

  .geo-visual-box .box-icon {
    font-size: 24px !important;
  }

  .geo-timeline {
    padding-left: 30px !important;
  }

  .geo-timeline-item {
    margin-bottom: 12px !important;
  }

  .geo-timeline-dot {
    left: -27px !important;
    width: 14px !important;
    height: 14px !important;
  }

  .geo-timeline-step {
    font-size: 10px !important;
    margin-bottom: 4px !important;
  }

  .geo-timeline-title,
  .process-timeline-content h4,
  .hs-process-step-title {
    font-size: 14px !important;
    line-height: 1.35 !important;
  }

  .geo-timeline-desc,
  .process-timeline-content p,
  .hs-process-step-desc {
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  .geo-industry-card {
    width: 150px !important;
    padding: 14px 10px !important;
    border-radius: 12px !important;
  }

  .geo-industry-emoji {
    font-size: 28px !important;
  }

  .hs-process-steps {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .hs-process-step {
    max-width: none !important;
    padding: 12px 8px !important;
  }

  .hs-process-step-num,
  .process-timeline-num {
    width: 42px !important;
    height: 42px !important;
    font-size: 16px !important;
    margin-bottom: 8px !important;
  }

  .hs-case-item {
    gap: 12px !important;
    padding: 12px !important;
    border-radius: 12px !important;
  }

  .hs-case-image {
    width: 100% !important;
    height: auto !important;
    min-height: 210px !important;
    border-radius: 12px !important;
  }

  .hs-case-image img {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 210px !important;
    object-fit: contain !important;
  }

  .hs-case-info h3 {
    font-size: 17px !important;
    margin-bottom: 8px !important;
  }

  .hs-case-data {
    gap: 8px !important;
    margin-bottom: 8px !important;
  }

  .hs-case-data-num {
    font-size: 18px !important;
  }

  .hs-case-info > p {
    font-size: 12px !important;
    line-height: 1.5 !important;
  }

  .hs-why-compare,
  .process-timeline {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .hs-why-list-item {
    padding: 8px !important;
    margin-bottom: 7px !important;
    font-size: 11px !important;
  }

  .hs-pricing-grid {
    gap: 10px !important;
  }

  .hs-pricing-name,
  .hs-pricing-price strong {
    font-size: 20px !important;
  }

  .hs-pricing-features li {
    font-size: 12px !important;
    margin-bottom: 8px !important;
  }

  .industry-tabs {
    gap: 4px !important;
  }

  .industry-tab {
    padding: 8px 10px !important;
    font-size: 11px !important;
  }

  .industry-panels {
    min-height: 0 !important;
  }

  .industry-pain,
  .industry-solution {
    padding: 0 !important;
  }

  .industry-pain h4,
  .industry-solution h4 {
    font-size: 15px !important;
    margin-bottom: 6px !important;
  }

  .industry-pain p,
  .industry-solution p {
    font-size: 12px !important;
    line-height: 1.5 !important;
  }

  .industry-features {
    gap: 6px !important;
  }

  .industry-feature-tag,
  .tech-card-tag,
  .hs-play-card-features span {
    padding: 4px 7px !important;
    font-size: 10px !important;
  }

  .cta-inner,
  .geo-cta-inner,
  .hs-cta-inner {
    padding: 28px 18px !important;
    border-radius: 16px !important;
  }

  .cta-content h2,
  .geo-cta-content h2,
  .hs-cta-content h2,
  .cta-inner h2 {
    font-size: 22px !important;
    line-height: 1.3 !important;
  }

  .cta-content p,
  .geo-cta-content p,
  .hs-cta-content p,
  .cta-inner p {
    font-size: 12px !important;
    line-height: 1.55 !important;
  }

  .footer {
    padding: 34px 0 18px !important;
  }

  .footer .container {
    padding: 0 18px !important;
  }

  .footer-top {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 18px !important;
    margin-bottom: 18px !important;
  }

  .footer-brand {
    width: 100% !important;
    text-align: center !important;
  }

  .footer-brand img {
    height: 30px !important;
    margin: 0 auto 10px !important;
  }

  .footer-brand p {
    max-width: 100% !important;
    font-size: 12px !important;
    line-height: 1.7 !important;
    color: var(--text-muted) !important;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .footer-mobile-links {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }

  .footer-mobile-links .footer-links-group {
    min-width: 0 !important;
    width: 100% !important;
    padding: 14px 8px;
    text-align: center !important;
    border: 1px solid rgba(124, 58, 237, 0.14);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.035);
  }

  .footer-mobile-links .footer-links-group h5,
  .footer-qr-group h5 {
    font-size: 13px !important;
    margin-bottom: 8px !important;
    text-align: center !important;
  }

  .footer-mobile-links .footer-links-group a {
    display: block !important;
    margin: 0 !important;
    padding: 5px 0 !important;
    font-size: 12px !important;
    line-height: 1.45;
    color: var(--text-secondary) !important;
  }

  .footer-qr-group {
    width: 100% !important;
    text-align: center !important;
    padding: 16px 10px 12px;
    border: 1px solid rgba(124, 58, 237, 0.14);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.035);
  }

  .footer-qr-list {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px !important;
    margin-top: 8px !important;
    justify-items: center;
  }

  .footer-qr-item {
    min-width: 0;
    text-align: center;
  }

  .footer-qr-item img,
  .footer-qr-group img {
    width: 58px !important;
    height: 58px !important;
    margin: 0 auto;
    border-radius: 8px !important;
    object-fit: cover;
  }

  .footer-qr-item p,
  .footer-qr-group p {
    margin-top: 5px !important;
    font-size: 10px !important;
    line-height: 1.25;
    color: var(--text-muted) !important;
  }

  .footer-bottom {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    padding-top: 14px !important;
    text-align: center !important;
  }

  .footer-bottom p {
    font-size: 10px !important;
    line-height: 1.5;
  }
}

@media (max-width: 380px) {
  .footer-mobile-links {
    grid-template-columns: 1fr;
  }

  .footer-mobile-links .footer-links-group {
    padding: 12px 10px;
  }

  .footer-qr-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 12px !important;
  }
}

@media (max-width: 768px) {
  html.light-theme .nav-center {
    background: rgba(255, 255, 255, 0.98) !important;
    border-color: rgba(0, 0, 0, 0.08) !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.16);
  }

  html.light-theme .nav-mobile-toggle span {
    background: #334155 !important;
  }

  html.light-theme .geo-page .nav-mobile-toggle {
    border-color: rgba(15, 23, 42, 0.12) !important;
    background: rgba(255, 255, 255, 0.86) !important;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.14) !important;
  }

  html.light-theme .geo-page .nav-mobile-toggle span {
    background: #334155 !important;
  }

  html.light-theme .nav-right .theme-toggle,
  html.light-theme .nav-right .nav-theme {
    border-color: rgba(15, 23, 42, 0.12) !important;
    background: rgba(255, 255, 255, 0.86) !important;
    color: #334155 !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.12) !important;
    transform: none !important;
    -webkit-text-fill-color: currentColor !important;
  }

  html.light-theme .nav-right .theme-toggle:hover,
  html.light-theme .nav-right .theme-toggle:active,
  html.light-theme .nav-right .nav-theme:hover,
  html.light-theme .nav-right .nav-theme:active {
    transform: none !important;
    background: rgba(255, 255, 255, 0.95) !important;
  }

  html.light-theme .footer-mobile-links .footer-links-group,
  html.light-theme .footer-qr-group {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.12);
  }
}
