/* SynapTree Responsive Styles — Mobile First */

/* Small phones (< 480px) */
@media (max-width: 479px) {
  .hero-content {
    text-align: center;
  }

  .hero-ctas {
    flex-direction: column;
    align-items: stretch;
  }

  .hero-ctas .btn {
    width: 100%;
    justify-content: center;
  }

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

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

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

  .comparison-table {
    font-size: var(--font-size-sm);
  }

  .comparison-table td,
  .comparison-table th {
    padding: var(--space-3) var(--space-2);
  }

  .footer-links {
    flex-direction: column;
    gap: var(--space-3);
  }
}

/* Tablets (480px - 767px) */
@media (min-width: 480px) and (max-width: 767px) {
  .features-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .pricing-grid {
    grid-template-columns: 1fr;
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
  }

  .themes-grid {
    grid-template-columns: 1fr;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* Small tablets / large phones (768px+) */
@media (min-width: 768px) {
  .hero-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-12);
    align-items: center;
  }

  .hero-content {
    text-align: left;
  }

  .hero-ctas {
    justify-content: flex-start;
  }

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

  .themes-grid {
    grid-template-columns: repeat(3, 1fr);
  }

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

/* Desktop (1024px+) */
@media (min-width: 1024px) {
  .features-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .hero-layout {
    gap: var(--space-16);
  }
}

/* Nav mobile toggle */
@media (max-width: 767px) {
  .nav-links {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--color-white);
    flex-direction: column;
    padding: var(--space-4) var(--container-padding);
    box-shadow: var(--shadow-lg);
    border-bottom: 1px solid var(--color-medium-gray);
  }

  .nav-links.is-open {
    display: flex;
  }

  .nav-links a {
    padding: var(--space-3) 0;
    border-bottom: 1px solid var(--color-light-gray);
  }

  .nav-links .btn-nav-cta {
    margin-top: var(--space-2);
    margin-left: 0;
    text-align: center;
  }

  .nav-toggle {
    display: flex;
  }

  .site-nav.is-scrolled .nav-links {
    background: var(--color-white);
  }
}

@media (min-width: 768px) {
  .nav-toggle {
    display: none;
  }

  .nav-links {
    display: flex !important;
  }
}

/* Demo section responsive */
@media (max-width: 767px) {
  .demo-svg-container {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .demo-tooltip {
    font-size: var(--font-size-xs);
  }
}

/* Download section responsive */
@media (max-width: 600px) {
  .download-meta {
    flex-direction: column;
    gap: var(--space-2);
    align-items: center;
  }
}
