/* =========================================================
   RESPONSIVE STYLES — mobile-first breakpoints
   ========================================================= */

/* Tablet / small laptop */
@media (max-width: 1080px) {
  .why-grid           { grid-template-columns: repeat(2, 1fr); }
  .services-grid      { grid-template-columns: repeat(2, 1fr); }
  .tech-grid          { grid-template-columns: repeat(3, 1fr); }
  .stats-grid         { grid-template-columns: repeat(2, 1fr); }
  .trust-grid         { grid-template-columns: repeat(2, 1fr); }
  .testimonial-track  { grid-template-columns: 1fr; }
  .footer-top         { grid-template-columns: 1fr 1fr; gap: 40px 30px; }
  .contact-layout     { grid-template-columns: 1fr; gap: 30px; }

  .founders .founder-card,
  .founder-card.reversed {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .founder-card.reversed .founder-image { order: 0; }
  .founder-image { max-width: 420px; }
}

/* Tablet */
@media (max-width: 820px) {
  .section          { padding: 100px 0; }
  .section-head     { margin-bottom: 50px; }
  .container        { padding: 0 22px; }

  .nav-links        { display: none; }
  .nav-cta          { display: none; }
  #themeToggle      { display: none; }
  .menu-toggle      { display: flex; }

  .portfolio-grid   { grid-template-columns: 1fr; }
  .founder-blocks   { grid-template-columns: 1fr; }
  .row-2            { grid-template-columns: 1fr; }
  .stats-grid       { padding: 40px 24px; }
  .contact-form     { padding: 28px; }

  .timeline         { padding-left: 30px; }
  .timeline-marker  { width: 50px; height: 50px; font-size: 0.9rem; margin-left: -55px; }
  .timeline-item    { gap: 20px; }

  body              { cursor: auto; }
  .cursor, .cursor-dot { display: none; }
}

/* Large mobile */
@media (max-width: 560px) {
  .section          { padding: 80px 0; }
  .hero             { padding: 120px 0 80px; min-height: auto; }
  .hero-title       { font-size: clamp(2.2rem, 10vw, 3.4rem); }
  .hero-sub         { font-size: 1rem; }
  .hero-cta         { flex-direction: column; align-items: stretch; }
  .hero-cta .btn    { justify-content: center; }

  .why-grid         { grid-template-columns: 1fr; }
  .services-grid    { grid-template-columns: 1fr; }
  .tech-grid        { grid-template-columns: repeat(2, 1fr); }
  .stats-grid       { grid-template-columns: 1fr 1fr; padding: 30px 18px; gap: 20px; }
  .trust-grid       { grid-template-columns: 1fr; }
  .footer-top       { grid-template-columns: 1fr; }
  .footer-bottom    { flex-direction: column; text-align: center; }

  .floating-actions { bottom: 18px; right: 18px; gap: 12px; }
  .fab              { width: 50px; height: 50px; }
  .fab svg          { width: 22px; height: 22px; }
  .fab-tooltip      { display: none; }

  .contact-form     { padding: 22px; }
  .section-head h2  { font-size: clamp(1.8rem, 7vw, 2.4rem); }
}

/* Small mobile */
@media (max-width: 380px) {
  .container        { padding: 0 16px; }
  .brand-name       { display: none; }
  .badge            { font-size: 0.75rem; padding: 6px 12px; }
}