/* Responsividade SHANRAY */
@media (max-width: 1024px) {
  .hero .container {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .hero-content p {
    margin-left: auto;
    margin-right: auto;
  }

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

  .hero-image {
    order: -1;
  }

  .hero-badges {
    left: 50%;
    transform: translateX(-50%);
  }

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

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

  .sidebar {
    position: static;
  }
}

@media (max-width: 768px) {
  .nav {
    position: fixed;
    top: 80px;
    left: 0;
    width: 100%;
    height: calc(100vh - 80px);
    background: var(--color-white);
    flex-direction: column;
    padding: 2rem;
    gap: 1.5rem;
    transform: translateX(100%);
    transition: var(--transition);
    box-shadow: var(--shadow);
    z-index: 999;
  }

  .nav.active {
    transform: translateX(0);
  }

  .nav a {
    font-size: 1.25rem;
  }

  .menu-toggle {
    display: flex;
  }

  .menu-toggle.active span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
  }

  .menu-toggle.active span:nth-child(2) {
    opacity: 0;
  }

  .menu-toggle.active span:nth-child(3) {
    transform: rotate(-45deg) translate(5px, -5px);
  }

  .hero-content h1 {
    font-size: 2.5rem;
  }

  .hero-content p {
    font-size: 1rem;
  }

  .categories-grid,
  .features-grid,
  .testimonials-grid,
  .values-grid,
  .about-grid,
  .vehicle-detail {
    grid-template-columns: 1fr;
  }

  .franchise-banner .container {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .footer-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .form-grid,
  .vehicle-specs,
  .feature-list,
  .feature-list-full {
    grid-template-columns: 1fr;
  }

  .section {
    padding: 3rem 0;
  }

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

  .catalog-header {
    flex-direction: column;
    align-items: flex-start;
  }

  .filter-bar {
    flex-direction: column;
    width: 100%;
  }

  .filter-bar select,
  .filter-bar input {
    width: 100%;
    min-width: 0;
  }

  .tab-buttons {
    flex-wrap: wrap;
  }

  .brand-galleries-grid,
  .stores-grid {
    grid-template-columns: 1fr;
  }

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

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

  .advantage-item {
    align-items: flex-start;
  }

  .vehicle-actions .btn,
  .vehicle-specs-section .btn {
    width: 100%;
  }

  .color-options {
    flex-wrap: wrap;
  }

  .product-card .btn,
  .catalog-card .btn {
    width: 100%;
  }

  .floating-whatsapp {
    bottom: 1rem;
    right: 1rem;
  }

  .floating-whatsapp i {
    width: 48px;
    height: 48px;
    font-size: 1.5rem;
  }
}

@media (max-width: 1024px) {
  .photo-gallery,
  .detail-gallery {
    grid-template-columns: repeat(3, 1fr);
  }

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

@media (max-width: 768px) {
  .photo-gallery,
  .detail-gallery {
    grid-template-columns: repeat(2, 1fr);
  }

  .gallery-photo img,
  .detail-card img {
    height: 200px;
  }

  .price-old {
    font-size: 1rem;
  }
}

@media (max-width: 480px) {
  .hero-content h1 {
    font-size: 1.75rem;
  }

  .section {
    padding: 2rem 0;
  }

  .container {
    padding: 0 1rem;
  }

  .category-card {
    padding: 1.75rem;
  }

  .feature-item,
  .value-card,
  .testimonial-card {
    padding: 1.5rem;
  }

  .btn {
    width: 100%;
  }

  .hero-buttons {
    flex-direction: column;
  }

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

  .vehicle-thumbs {
    flex-wrap: wrap;
  }

  .vehicle-thumbs img {
    width: 60px;
    height: 45px;
  }

  .vehicle-actions {
    flex-direction: column;
  }

  .photo-gallery,
  .detail-gallery {
    grid-template-columns: 1fr;
  }

  .table-wrapper .specs-table,
  .table-wrapper .specs-table thead,
  .table-wrapper .specs-table tbody,
  .table-wrapper .specs-table th,
  .table-wrapper .specs-table td,
  .table-wrapper .specs-table tr {
    display: block;
    width: 100%;
  }

  .table-wrapper .specs-table thead {
    display: none;
  }

  .table-wrapper .specs-table {
    min-width: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  .table-wrapper .specs-table tr {
    margin-bottom: 1rem;
    background: var(--color-white);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    overflow: hidden;
  }

  .table-wrapper .specs-table td {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #eee;
    text-align: right;
    gap: 1rem;
    word-break: break-word;
  }

  .table-wrapper .specs-table td::before {
    content: attr(data-label);
    font-weight: 700;
    color: var(--color-black);
    text-align: left;
    flex-shrink: 0;
  }

  .table-wrapper .specs-table td:last-child {
    border-bottom: none;
  }
}
