/* =============================================
   DC TATTOO ARTES — Mobile Overrides
   Corrige todos os grids inline e layouts
   ============================================= */

/* ---- NAV MOBILE ---- */
@media (max-width: 768px) {
  .nav {
    padding: 0.8rem 0;
  }

  .nav-inner {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    padding: 0 1.2rem;
  }

  .nav-links.nav-left,
  .nav-links.nav-right {
    display: none !important;
  }

  .nav-logo {
    position: static;
    transform: none;
    flex: 1;
    justify-content: center;
  }

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

  .nav.scrolled .nav-logo-img {
    height: 38px !important;
  }

  .nav-mobile-btn {
    display: flex !important;
  }

  /* Espaço para o hamburger à esquerda (balance) */
  .nav-inner::before {
    content: '';
    width: 40px;
    flex-shrink: 0;
  }
}

/* ---- FORÇAR GRIDS INLINE → COLUNA ÚNICA no mobile ---- */
/* Usa !important para sobrescrever inline styles */
@media (max-width: 768px) {

  /* Stats (4 colunas → 2 colunas) */
  [style*="grid-template-columns: repeat(4, 1fr)"] {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  /* 3 colunas → 1 coluna */
  [style*="grid-template-columns: repeat(3, 1fr)"] {
    grid-template-columns: 1fr !important;
  }

  /* 2 colunas → 1 coluna */
  [style*="grid-template-columns: 1fr 1fr"] {
    grid-template-columns: 1fr !important;
  }

  /* Grids de conteúdo (foto + texto) */
  [style*="grid-template-columns: 1fr 1fr;"] {
    grid-template-columns: 1fr !important;
  }

  [style*="grid-template-columns: 1.4fr 1fr"] {
    grid-template-columns: 1fr !important;
  }

  [style*="grid-template-columns: 1.2fr 1fr"] {
    grid-template-columns: 1fr !important;
  }

  [style*="grid-template-columns: 2fr 1fr 1fr 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }

  [style*="grid-template-columns: 1fr 1.5fr"],
  [style*="grid-template-columns: 1.5fr 1fr"] {
    grid-template-columns: 1fr !important;
  }

  /* Portfolio */
  .portfolio-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  /* ---- GERAL ---- */
  section {
    padding: 3rem 0 !important;
  }

  .container, .container-wide {
    padding: 0 1.2rem !important;
  }

  /* ---- HERO ---- */
  .hero {
    min-height: 100svh;
    min-height: 100vh;
  }

  .hero-content {
    padding-top: 6rem !important;
    padding-bottom: 4rem;
  }

  .hero h1 {
    font-size: clamp(2rem, 8vw, 3rem) !important;
  }

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

  /* ---- PAGE HEADER ---- */
  .page-header {
    padding: 8rem 0 3rem !important;
  }

  .page-header-bg-text {
    font-size: clamp(4rem, 20vw, 8rem) !important;
  }

  /* ---- TYPOGRAPHY ---- */
  h1 { font-size: clamp(1.8rem, 7vw, 2.5rem) !important; }
  h2 { font-size: clamp(1.6rem, 6vw, 2.2rem) !important; }
  h3 { font-size: clamp(1.2rem, 4vw, 1.6rem) !important; }

  /* ---- STAT NUMBERS ---- */
  .stat-number {
    font-size: 2rem !important;
  }

  /* ---- BUTTONS ---- */
  .btn {
    padding: 0.85rem 1.4rem !important;
    font-size: 0.72rem !important;
  }

  [style*="display: flex; gap: 1rem; flex-wrap: wrap"] {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  [style*="display:flex;gap:1rem;flex-wrap:wrap"],
  [style*="display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap"] {
    flex-direction: column !important;
    align-items: center !important;
  }

  /* ---- CARDS PADDING ---- */
  [style*="padding: 3rem 2.5rem"] {
    padding: 1.8rem 1.5rem !important;
  }

  [style*="padding:3rem 2.5rem"] {
    padding: 1.8rem 1.5rem !important;
  }

  /* ---- IMAGENS (aspect ratio) ---- */
  [style*="aspect-ratio: 3/4"] {
    aspect-ratio: 4/3 !important;
    max-height: 320px;
  }

  [style*="aspect-ratio: 4/5"] {
    aspect-ratio: 3/2 !important;
  }

  /* ---- GOLD BADGE NO CANTO ---- */
  [style*="position: absolute; -bottom"] {
    position: static !important;
    margin-top: 1rem;
    display: inline-block;
  }

  /* ---- FOOTER ---- */
  .footer {
    padding: 3rem 0 1.5rem !important;
  }

  .footer-bottom {
    flex-direction: column !important;
    text-align: center !important;
    gap: 0.5rem !important;
  }

  .footer img[style*="height:56px"] {
    height: 44px !important;
  }

  /* ---- STICKY SIDEBAR ---- */
  [style*="position:sticky"],
  [style*="position: sticky"] {
    position: static !important;
  }

  /* ---- OVERFLOW ---- */
  body {
    overflow-x: hidden;
  }

  [style*="white-space: nowrap"] {
    white-space: normal !important;
  }

  /* ---- MAX-WIDTH INLINE ---- */
  [style*="max-width: 700px"],
  [style*="max-width: 800px"],
  [style*="max-width: 600px"],
  [style*="max-width: 500px"] {
    max-width: 100% !important;
  }

  /* ---- GAP MENOR ---- */
  [style*="gap: 5rem"],
  [style*="gap: 4rem"] {
    gap: 2rem !important;
  }

  [style*="gap: 3rem"] {
    gap: 1.5rem !important;
  }

  /* ---- SECTION HEADER FLEX → COLUMN ---- */
  .section-header[style*="display: flex"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 1rem !important;
  }

  /* ---- TESTIMONIAL TRACK ---- */
  .testimonial-track {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  /* ---- PROCESS STEPS ---- */
  .process-step {
    padding: 1.5rem 1rem !important;
  }

  /* ---- IFRAME MAPA ---- */
  iframe {
    width: 100% !important;
    min-height: 220px;
  }

  /* ---- LOJA / SHOP GRID ---- */
  [style*="grid-template-columns: repeat(4, 1fr)"] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 1rem !important;
  }

  /* ---- FORMULÁRIO ---- */
  [style*="grid-template-columns: 1fr 1fr;"] {
    grid-template-columns: 1fr !important;
  }

  /* ---- FLAGS ---- */
  .flags {
    font-size: 1.2rem !important;
  }

  /* ---- GOLD NUMBER OPACITY ---- */
  .gold-number {
    font-size: 2.5rem !important;
  }

  /* ---- SOCIAL LINKS ---- */
  .social-links {
    justify-content: flex-start;
  }
}

/* ---- TABLET (768 → 1024) ---- */
@media (min-width: 769px) and (max-width: 1024px) {
  .nav-inner {
    gap: 0.5rem;
  }

  .nav-links {
    gap: 1.2rem !important;
  }

  .nav-links a {
    font-size: 0.72rem !important;
  }

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

  [style*="grid-template-columns: repeat(4, 1fr)"] {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  [style*="grid-template-columns: 2fr 1fr 1fr 1fr"] {
    grid-template-columns: 1fr 1fr !important;
  }

  [style*="gap: 5rem"] {
    gap: 3rem !important;
  }
}

/* ---- VERY SMALL PHONES ---- */
@media (max-width: 380px) {
  .portfolio-grid {
    grid-template-columns: 1fr !important;
  }

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

  h1 { font-size: 1.6rem !important; }
  h2 { font-size: 1.4rem !important; }
}

/* ---- MOBILE MENU ---- */
@media (max-width: 768px) {
  .mobile-menu {
    gap: 1.5rem;
    padding: 2rem;
  }

  .mobile-menu a {
    font-size: 1.5rem;
  }
}
