/* ==========================================================================
   ONEBIT SOLUTIONS - RESPONSIVE STYLESHEET (responsive.css)
   Tối ưu hiển thị tuyệt đối cho Mobile, Tablet và Màn hình nhỏ
   ========================================================================== */

/* Breakpoint: Mobile (<= 767.98px) */
@media (max-width: 767.98px) {
  .hero-section {
    padding-top: calc(var(--header-height) + 20px);
    padding-bottom: 80px;
    text-align: center;
  }

  .hero-description {
    margin-left: auto;
    margin-right: auto;
  }

  .hero-btn-group {
    justify-content: center;
  }

  .hero-btn-group .btn-cta-teal,
  .hero-btn-group .btn-cta-outline {
    width: 100%;
  }

  .hero-laptop-pos-wrapper {
    position: relative;
    top: 10px;
    right: auto;
    left: auto;
    margin: 35px auto 0;
    width: min(320px, 85vw);
    display: block;
  }

  .stats-banner-container {
    margin-top: -30px;
  }

  .stats-banner-onebitsolutions {
    padding: 30px 16px;
  }

  .stat-box-item:not(:last-child)::after {
    display: none;
  }

  .stat-box-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    padding-bottom: 16px;
    margin-bottom: 16px;
  }

  .stat-box-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
  }

  .counter-number-val {
    font-size: 2.5rem;
  }

  .testimonial-card-onebitsolutions {
    margin-top: 45px;
  }

  .footer-cta-container {
    margin-bottom: -50px;
  }

  .footer-cta-card {
    padding: 36px 20px;
  }

  .wave-footer {
    padding-top: 100px;
    text-align: center;
  }

  .footer-link-list {
    margin-bottom: 24px;
  }

  .dmca-badge-box {
    margin: 14px auto 0;
  }

  .floating-quick-bar {
    bottom: 24px;
    right: 20px;
    gap: 12px;
  }

  .quick-bar-btn {
    width: 48px;
    height: 48px;
  }

  .quick-bar-btn svg {
    width: 30px;
    height: 30px;
  }

  .btn-floating-phone,
  .btn-floating-phone i,
  .btn-floating-chat,
  .btn-floating-chat i {
    font-size: 1.35rem;
  }
}

/* Breakpoint: Tablet (768px - 991.98px) */
@media (min-width: 768px) and (max-width: 991.98px) {
  .hero-title {
    font-size: 2.8rem;
  }

  .hero-laptop-pos-wrapper {
    top: 85px;
    right: 0vw;
    width: clamp(340px, 45vw, 420px);
    opacity: 0.85;
  }

  .hero-sticks-wrapper {
    top: 140px;
    right: 3vw;
    width: clamp(320px, 42vw, 400px);
    opacity: 0.7;
  }

  .navbar-collapse {
    background: #ffffff;
    padding: 24px;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-primary);
    margin-top: 14px;
    border: 1px solid var(--border-color);
  }

  .header-phone-btn {
    margin-top: 16px;
    width: 100%;
    justify-content: center;
  }

  .stat-box-item:nth-child(2)::after {
    display: none;
  }
}

/* Breakpoint: Desktop Collapse Navigation (<= 991.98px) */
@media (max-width: 991.98px) {
  .navbar-collapse {
    background: #ffffff;
    padding: 20px;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-primary);
    margin-top: 12px;
  }
}

/* Responsive Cookie Consent Banner */
@media (max-width: 991.98px) {
  .cookie-consent-container {
    padding: 12px 18px;
    gap: 16px;
  }
}

@media (max-width: 767.98px) {
  .cookie-consent-container {
    flex-direction: column;
    align-items: stretch;
    padding: 14px 16px;
    padding-bottom: max(14px, env(safe-area-inset-bottom, 14px));
    gap: 12px;
  }

  .cookie-consent-content {
    align-items: flex-start;
    gap: 12px;
    padding-right: 28px; /* chừa khoảng trống cho nút đóng */
  }

  .cookie-icon-badge {
    width: 36px;
    height: 36px;
    font-size: 1.15rem;
    border-radius: 10px;
  }

  .cookie-consent-desc {
    font-size: 0.82rem;
    line-height: 1.45;
  }

  .cookie-consent-actions {
    width: 100%;
    display: flex;
    gap: 8px;
  }

  .btn-cookie-decline,
  .btn-cookie-accept {
    flex: 1;
    text-align: center;
    padding: 10px 12px;
    font-size: 0.84rem;
  }

  .cookie-btn-close {
    position: absolute;
    top: 10px;
    right: 12px;
    margin-left: 0;
  }

  /* Đẩy quick bar lên cao hơn trên điện thoại khi banner mở */
  body:has(#cookieConsentBanner.show) .floating-quick-bar,
  body.cookie-banner-active .floating-quick-bar {
    bottom: 180px;
  }
}