/* ===========================
   RESPONSIVE — TABLET (1024px)
=========================== */
@media (max-width: 1024px) {
  :root {
    --nav-height: 90px;
  }

  .hero-container {
    grid-template-columns: 1fr;
    gap: 60px;
    text-align: center;
    padding: 40px 0;
  }

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

  .hero-cta {
    justify-content: center;
  }

  .hero-visual {
    max-width: 480px;
    margin: 0 auto;
  }

  .hero-card-stack {
    height: 380px;
  }

  .stats-container {
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
  }

  .stat-item:nth-child(2) {
    border-right: none;
  }

  .stat-item:nth-child(3),
  .stat-item:nth-child(4) {
    border-top: 1px solid var(--border-subtle);
  }

  .stat-item:nth-child(4) {
    border-right: none;
  }

  .services-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .about-container {
    grid-template-columns: 1fr;
    gap: 50px;
  }

  .about-visual {
    max-width: 400px;
    margin: 0 auto;
  }

  .testimonials-track {
    grid-template-columns: repeat(2, 1fr);
  }

  .footer-top {
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }

  .footer-brand {
    grid-column: 1 / -1;
  }

  .services-full-grid {
    grid-template-columns: 1fr;
  }

  .process-steps {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }

  .process-steps::before {
    display: none;
  }

  .portfolio-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .case-study-card {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 40px;
  }

  .case-visual {
    max-width: 360px;
    margin: 0 auto;
  }

  .contact-container {
    grid-template-columns: 1fr;
    gap: 50px;
  }
}

/* ===========================
   RESPONSIVE — MOBILE (768px)
=========================== */
@media (max-width: 768px) {
  :root {
    --nav-height: 64px;
  }

  /* NAV */
  .navbar {
    padding: 0 20px;
  }

  .nav-links {
    display: none;
  }

  .nav-right .lang-switcher {
    display: none;
  }

  .hamburger {
    display: flex;
  }

  .nav-logo img {
    max-height: 60px !important;
  }

  .mobile-menu {
    padding: 20px 20px 28px;
  }

  /* HERO */
  .hero {
    padding: var(--nav-height) 20px 0;
  }

  .hero-container {
    gap: 40px;
  }

  .hero-title {
    font-size: clamp(2.2rem, 9vw, 3.2rem);
  }

  .hero-card-stack {
    height: 320px;
  }

  .hero-stat-card.card-1 {
    right: 0;
    top: 10px;
  }

  .hero-stat-card.card-2 {
    left: 0;
    bottom: 60px;
  }

  /* STATS */
  .stats-section {
    padding: 60px 20px;
  }

  .stats-container {
    grid-template-columns: repeat(2, 1fr);
  }

  /* SECTIONS */
  .services-preview,
  .about-section,
  .testimonials-section,
  .cta-section {
    padding: 80px 20px;
  }

  .services-grid {
    grid-template-columns: 1fr;
  }

  .testimonials-track {
    grid-template-columns: 1fr;
  }

  /* PAGE HERO */
  .page-hero {
    padding: calc(var(--nav-height) + 40px) 20px 60px;
  }

  .page-hero-title {
    font-size: clamp(2.2rem, 8vw, 3.2rem);
  }

  /* SERVICES PAGE */
  .services-full,
  .process-section {
    padding: 80px 20px;
  }

  .process-steps {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  /* PORTFOLIO PAGE */
  .portfolio-section,
  .case-study-section {
    padding: 80px 20px;
  }

  .portfolio-grid {
    grid-template-columns: 1fr;
  }

  .case-study-card {
    padding: 30px 24px;
  }

  .case-results {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  /* CONTACT PAGE */
  .contact-section {
    padding: 80px 20px;
  }

  .contact-form-wrap {
    padding: 30px 24px;
  }

  .form-row {
    grid-template-columns: 1fr;
  }

  /* FOOTER */
  .footer {
    padding: 60px 20px 30px;
  }

  .footer-top {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .footer-brand {
    grid-column: 1;
  }

  .footer-bottom {
    flex-direction: column;
    text-align: center;
    gap: 12px;
  }

  /* SECTION BADGE */
  .section-badge {
    font-size: 0.68rem;
  }

  /* CTA */
  .cta-buttons {
    flex-direction: column;
    align-items: stretch;
  }

  .cta-buttons .btn {
    justify-content: center;
  }

  /* SCROLL INDICATOR */
  .scroll-indicator {
    display: none;
  }

  /* CURSOR */
  .cursor-dot,
  .cursor-ring {
    display: none;
  }
}

/* ===========================
   RESPONSIVE — SMALL (480px)
=========================== */
@media (max-width: 480px) {
  .hero-title {
    font-size: 2rem;
  }

  .hero-card-stack {
    height: 280px;
  }

  .hero-stat-card {
    padding: 12px 16px;
  }

  .stat-num {
    font-size: 1.3rem;
  }

  .stats-container {
    grid-template-columns: 1fr;
  }

  .stat-item {
    border-right: none;
    border-bottom: 1px solid var(--border-subtle);
  }

  .stat-item:last-child {
    border-bottom: none;
  }

  .page-hero-title {
    font-size: 1.9rem;
  }

  .section-title {
    font-size: 1.8rem;
  }

  .portfolio-filters {
    gap: 6px;
  }

  .filter-btn {
    padding: 7px 14px;
    font-size: 0.78rem;
  }

  .contact-form-wrap {
    padding: 24px 18px;
  }

  .service-card-full {
    flex-direction: column;
    padding: 28px 24px;
  }

  .case-study-card {
    padding: 24px 18px;
  }

  .case-study-title {
    font-size: 1.5rem;
  }
}

/* ===========================
   PRINT
=========================== */
@media print {
  .navbar,
  .footer,
  .cursor-dot,
  .cursor-ring,
  .noise-overlay,
  .scroll-indicator {
    display: none !important;
  }

  body {
    background: white;
    color: black;
  }
}
