/* =====================================================
   OXA CODE — Responsive
   ===================================================== */

/* -------------------------------------------------------
   Laptop / small desktop
   ------------------------------------------------------- */
@media (max-width: 1199.98px) {
  .oxa-navbar__links { gap: 1.45rem; }
  .oxa-navbar .oxa-btn-cta { padding-inline: 1rem; }

  .oxa-cube { width: min(440px, 90%); }
}

/* -------------------------------------------------------
   Tablet — hide desktop nav, show burger
   ------------------------------------------------------- */
@media (max-width: 991.98px) {
  .oxa-navbar { padding-block: 0.9rem; }
  .oxa-navbar.scrolled { padding-block: 0.68rem; }

  .oxa-navbar__links { display: none; }
  .oxa-navbar__actions > .oxa-btn-cta { display: none; }
  .oxa-menu-toggle { display: inline-flex; }
  .oxa-mobile-menu { display: block; }

  /* Hero cube: smaller + centered below text on tablet */
  .oxa-cube { width: min(380px, 80%); }

  .stats-bar { flex-wrap: wrap; gap: 24px; }
  .stats-bar-item { flex: 1 1 45%; }
  .stats-bar-divider { display: none; }

  .oxa-services, .oxa-why, .oxa-process, .oxa-portfolio,
  .oxa-testimonials, .oxa-cta { padding-top: 90px; }

  .footer-top { grid-template-columns: 1fr 1fr; gap: 36px 24px; }
  .footer-col-brand { grid-column: 1 / -1; }
}

/* -------------------------------------------------------
   Small tablet / large phone
   ------------------------------------------------------- */
@media (max-width: 767.98px) {
  .oxa-navbar > .container-fluid {
    padding-inline: 1.25rem !important;
    gap: 1rem;
  }

  .oxa-brand__logo { height: 36px; }
  .oxa-brand__text strong { font-size: 1rem; }
  .oxa-brand__text small  { font-size: 0.54rem; }
  .oxa-navbar__actions { gap: 0.5rem; }
  .oxa-tool-btn, .oxa-menu-toggle { width: 40px; height: 40px; }
  .oxa-language-toggle { width: auto; min-width: 58px; padding-inline: 0.58rem; }

  /* Hero */
  .hero-title { font-size: clamp(30px, 7vw, 40px); }
  .hero-desc  { font-size: 15px; }
  .oxa-cube   { width: min(320px, 85%); }

  /* Navigate */
  .oxa-navigate { padding-top: 80px; }
  .navigate-title { font-size: 28px; }

  /* Sections */
  .oxa-services, .oxa-why, .oxa-process, .oxa-portfolio,
  .oxa-testimonials, .oxa-cta { padding-top: 80px; }
  .oxa-footer { margin-top: 80px; }

  .section-title { font-size: 26px; }
  .cta-title     { font-size: 26px; }
  .why-stats-grid { grid-template-columns: 1fr 1fr; }
  .process-content p { max-width: none; }
  .footer-top { grid-template-columns: 1fr; }

  .stats-bar-item { flex: 1 1 100%; }
}

/* -------------------------------------------------------
   Phone
   ------------------------------------------------------- */
@media (max-width: 575.98px) {
  .oxa-navbar > .container-fluid { padding-inline: 1rem !important; }

  .oxa-brand__text { display: none; }
  .oxa-brand__logo { height: 37px; }
  .oxa-navbar__tools { gap: 0.35rem; }

  .oxa-language-toggle {
    width: 39px;
    min-width: 39px;
    padding: 0;
  }

  .oxa-language-toggle i { display: none; }
  .oxa-language-code { font-size: 0.66rem; }
  .oxa-tool-btn, .oxa-menu-toggle { width: 39px; height: 39px; }

  .oxa-mobile-menu { padding: 6.8rem 1.15rem 1.5rem; }

  /* Hero */
  .hero-title   { font-size: clamp(28px, 8vw, 36px); letter-spacing: -1px; }
  .hero-actions { flex-direction: column; }
  .oxa-btn-primary,
  .oxa-btn-outline { width: 100%; justify-content: center; }
  .oxa-cube { width: min(280px, 90%); }

  /* Services marquee speed on mobile */
  .services-track-inner { animation-duration: 20s; }

  /* Footer */
  .footer-bottom { flex-direction: column; align-items: flex-start; }
}

/* -------------------------------------------------------
   Very small phone
   ------------------------------------------------------- */
@media (max-width: 380px) {
  .oxa-navbar__actions { gap: 0.32rem; }
  .oxa-navbar > .container-fluid { padding-inline: 0.8rem !important; }
  .hero-title { font-size: 26px; }
}
