/* Grupo Premam V2.5 — mobile dedicado e carregado depois do CSS principal */
@media (max-width: 767px) {
  html, body { overflow-x: hidden; }

  /* Margens laterais consistentes em todo o conteúdo mobile */
  .container {
    width: calc(100% - 32px) !important;
    max-width: none !important;
    margin-left: 16px !important;
    margin-right: 16px !important;
  }

  /* Banner mobile: texto e fotografia em blocos separados, sem cortes estranhos */
  .hero-v23 {
    min-height: 0 !important;
    background: #f7fafc !important;
    padding: 0 0 18px !important;
  }
  .hero-v23::before { display: none !important; }
  .hero-v23 .hero-grid {
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
  }
  .hero-v23 .hero-copy {
    width: 100% !important;
    min-height: 0 !important;
    padding: 34px 0 24px !important;
  }
  .hero-v23 .hero-copy::after { display: none !important; }
  .hero-v23 .hero-copy h1 {
    font-size: clamp(30px, 8.7vw, 39px) !important;
    line-height: 1.05 !important;
    margin: 8px 0 16px !important;
  }
  .hero-v23 .hero-copy p {
    font-size: 15px !important;
    line-height: 1.55 !important;
    margin-bottom: 18px !important;
  }
  .hero-v23 .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }
  .hero-v23 .hero-actions .btn { width: 100% !important; }
  .hero-v23 .hero-note { margin-top: 16px !important; }

  .hero-mobile-image {
    display: block !important;
    width: 100% !important;
    height: 235px !important;
    margin: 0 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    background: #e8eef3 !important;
    box-shadow: 0 8px 22px rgba(14, 62, 103, .12) !important;
  }
  .hero-mobile-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    object-fit: cover !important;
    object-position: 70% center !important;
  }

  /* Cards e seções respeitam a margem do container */
  .section { padding: 48px 0 !important; }
  .products-home .card-grid,
  .section-soft .card-grid,
  .applications-wrap,
  .credibility-grid { width: 100% !important; }

  /* Aplicações: obrigatoriamente 2 colunas x 3 linhas */
  .applications-wrap { grid-template-columns: 1fr !important; gap: 22px !important; }
  .applications-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    border-radius: 12px !important;
    overflow: hidden !important;
  }
  .applications-grid > div,
  .applications-grid > div:nth-child(n) {
    min-width: 0 !important;
    padding: 20px 8px !important;
    border-right: 1px solid var(--line) !important;
    border-bottom: 1px solid var(--line) !important;
  }
  .applications-grid > div:nth-child(2n) { border-right: 0 !important; }
  .applications-grid > div:nth-last-child(-n+2) { border-bottom: 0 !important; }
  .applications-grid span { font-size: 25px !important; }
  .applications-grid b {
    display: block !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }

  /* CTA logo abaixo da grade em largura integral */
  .cta-card { width: 100% !important; padding: 26px 22px !important; }
}

@media (max-width: 420px) {
  .container {
    width: calc(100% - 28px) !important;
    margin-left: 14px !important;
    margin-right: 14px !important;
  }
  .hero-mobile-image { height: 215px !important; }
  .applications-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 767px){
  .product-actions,.cta-actions{display:grid;grid-template-columns:1fr;width:100%}
  .product-actions .btn,.cta-actions .btn,.cta-actions .btn-outline-light{width:100%;text-align:center}
  .quote-context{font-size:.94rem}
}

/* V3.0 — carrossel mobile preserva o banner aprovado: texto + imagem separados */
@media (max-width: 767px) {
  .hero-v30,.premam-hero-carousel,.premam-hero-track{min-height:0!important}
  .hero-v30 .hero-slide{position:absolute!important;min-height:0!important;background:#f7fafc!important}
  .hero-v30 .hero-slide.is-active{position:relative!important}
  .hero-v30 .hero-slide .hero-grid{min-height:0!important;display:flex!important;flex-direction:column!important;gap:0!important;padding-top:0!important}
  .hero-v30 .hero-slide .hero-copy{position:relative!important;width:100%!important;min-height:0!important;padding:34px 0 24px!important}
  .hero-v30 .hero-slide-media{display:block!important;position:relative!important;inset:auto!important;width:100%!important;height:235px!important;margin:0 0 18px!important;border-radius:14px!important;overflow:hidden!important;border:0!important;box-shadow:0 8px 22px rgba(14,62,103,.12)!important}
  .hero-v30 .hero-slide-media::after{display:none!important}
  .hero-v30 .hero-slide-picture,.hero-v30 .hero-slide-picture img{width:100%!important;height:100%!important}
  .hero-v30 .hero-slide-picture img{min-height:0!important;object-fit:cover!important;object-position:center!important}
  .premam-hero-arrow{top:auto!important;bottom:106px!important;width:38px;height:38px;font-size:27px;background:rgba(255,255,255,.92)}
  .premam-hero-prev{left:24px}.premam-hero-next{right:24px}
  .premam-hero-dots{bottom:28px!important}
}
@media (max-width: 420px){.hero-v30 .hero-slide-media{height:215px!important}}

/* V3.1 — banner mobile: fotografia full-bleed, texto preserva margens */
@media (max-width: 768px){
  .hero-v30 .hero-slide .hero-grid{overflow:visible!important}
  .hero-v30 .hero-slide-media{
    width:calc(100% + 32px)!important;
    max-width:none!important;
    margin-left:-16px!important;
    margin-right:-16px!important;
    margin-bottom:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .hero-v30 .hero-slide-picture,
  .hero-v30 .hero-slide-picture img{
    border-radius:0!important;
  }
  .premam-hero-dots{bottom:18px!important}
  .premam-hero-arrow{bottom:90px!important}
}

/* V3.2 — catálogo mobile: busca + categorias + painel compacto de filtros */
@media (max-width: 767px){
  .catalog-filter{margin:20px 0 28px;padding:16px;border-radius:15px}
  .catalog-filter-search{margin-bottom:14px;max-width:none}
  .catalog-filter-search input{height:48px;padding-left:42px;font-size:.93rem}
  .catalog-search-icon{left:14px;font-size:22px}
  .catalog-category-filter{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;margin:0 -3px 14px;padding:0 3px 7px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .catalog-category-filter::-webkit-scrollbar{display:none}
  .catalog-category-btn{flex:0 0 auto;padding:8px 13px;font-size:.84rem}
  .catalog-mobile-filter-toggle{display:flex;width:100%;height:44px;padding:0 13px;align-items:center;justify-content:space-between;border:1px solid #d9e3eb;border-radius:10px;background:#f8fbfd;color:#315065;font:inherit;font-size:.88rem;font-weight:800;cursor:pointer}
  .catalog-advanced-filters{display:none;grid-template-columns:1fr;gap:12px;padding-top:14px;border-top:0}
  .catalog-filter.filters-open .catalog-advanced-filters{display:grid}
  .catalog-select-wrap select{height:44px}
  .catalog-clear-filters{height:40px;padding:0;text-align:left}
  .catalog-filter-summary{margin-top:13px}
  .catalog-no-results{padding:40px 12px 10px}
}

/* V3.4 */
@media(max-width:767px){.service-area-box{grid-template-columns:1fr;gap:22px;padding:26px 18px}.service-place-grid{justify-content:flex-start;gap:8px}.service-place-grid span{font-size:13px;min-height:36px;padding:7px 11px}}

/* V3.5 */
@media(max-width:767px){
  .premam-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:14px}.premam-metric{min-height:100px;padding:18px 12px}.premam-metric strong{font-size:1.7rem}.premam-metric span{font-size:.82rem}
  .premam-partners-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.premam-partner-logo{height:88px;padding:14px}
  .premam-testimonials-grid{grid-template-columns:1fr}.premam-testimonial{padding:22px}
  .product-share{align-items:flex-start}.product-share>span{width:100%;margin-bottom:2px}
}


/* V3.6 */
@media (max-width:767px){.premam-breadcrumbs{margin-bottom:18px;font-size:.76rem}.error-card,.thankyou-card{padding:30px 18px;border-radius:18px}.site-search-form{flex-direction:column}.site-search-form .btn{width:100%}.error-actions,.thankyou-actions{display:grid;grid-template-columns:1fr}.error-actions .btn,.thankyou-actions .btn{width:100%}.search-results-grid{grid-template-columns:1fr}.search-result-card{padding:20px}}
