/* ================================================================
   AMERICAN FILTER — RESPONSIVE FIX
   Mobile (≤767px) & Tablet (768-1023px) only
   Header/Nav NOT modified — kept in styles.css
   Buttons CENTRALIZED + Text CENTRALIZED
   ================================================================ */

@media (max-width: 1023px) {
  *,*::before,*::after { box-sizing: border-box; }
  html,body { overflow-x: hidden; max-width: 100%; }
  img,picture,svg,video,iframe { max-width: 100%; height: auto; display: block; }
}

/* HERO */
@media (max-width: 767px) {
  .hero { min-height: 100svh; padding: 7rem 1.25rem 3rem; text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center; }
  .hero__title { font-size: clamp(1.8rem, 7.5vw, 2.5rem) !important; line-height: 1.15 !important; margin-bottom: 1rem; }
  .hero__sub { font-size: 1rem !important; max-width: 100% !important; line-height: 1.6; }
  .hero__actions { display: flex !important; flex-direction: column !important; align-items: center; gap: 0.75rem; width: 100%; margin-top: 1.5rem; }
  .hero__actions .btn { width: 100%; max-width: 320px; text-align: center; justify-content: center; }
  .eyebrow { font-size: 0.75rem; text-align: center; display: block; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .hero { padding: 6rem 3rem 4rem; text-align: center; }
  .hero__title { font-size: clamp(2.25rem, 5vw, 3.5rem) !important; }
  .hero__actions { display: flex !important; justify-content: center; gap: 1rem; flex-wrap: wrap; }
  .hero__actions .btn { text-align: center; justify-content: center; }
}

/* SECTIONS BASE */
@media (max-width: 767px) {
  section { padding: 3.5rem 1.25rem !important; }
  section h2,.h2 { font-size: clamp(1.5rem, 6.5vw, 2.25rem) !important; line-height: 1.2 !important; margin-bottom: 0.75rem; }
  section h3 { font-size: 1.05rem !important; line-height: 1.3 !important; }
  section p,.lead { font-size: 0.95rem !important; line-height: 1.65; }
  .eyebrow { font-size: 0.72rem !important; letter-spacing: 0.1em; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  section { padding: 4.5rem 2.5rem !important; }
  section h2,.h2 { font-size: clamp(1.9rem, 4.5vw, 3rem) !important; }
}

/* BENEFÍCIOS */
@media (max-width: 767px) {
  .benefits__grid { grid-template-columns: 1fr !important; gap: 1.5rem; }
  .bcard { aspect-ratio: auto !important; }
  .bcard img { height: auto !important; max-height: 50vh; object-fit: cover; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .benefits__grid { grid-template-columns: repeat(2, 1fr) !important; gap: 2rem; }
  .bcard { aspect-ratio: auto !important; }
  .bcard img { height: auto !important; object-fit: cover; }
}

/* APLICAÇÕES */
@media (max-width: 767px) {
  .apps__grid { grid-template-columns: 1fr !important; gap: 1.5rem; }
  .acard { aspect-ratio: auto !important; }
  .acard img { height: auto !important; max-height: 50vh; object-fit: cover; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .apps__grid { grid-template-columns: repeat(2, 1fr) !important; gap: 2rem; }
  .acard { aspect-ratio: auto !important; }
  .acard img { height: auto !important; object-fit: cover; }
  .acard:last-child { grid-column: 1/-1; max-width: 480px; margin: 0 auto; }
}

/* ANTES/DEPOIS */
@media (max-width: 1023px) {
  .beforeafter { grid-template-columns: 1fr !important; gap: 2rem !important; padding: 0 1.25rem !important; }
  .beforeafter__img { width: 100%; height: auto; aspect-ratio: auto !important; object-fit: cover; }
  .beforeafter__txt { text-align: center; }
}

/* TECNOLOGIA */
@media (max-width: 767px) {
  .tech__grid { grid-template-columns: 1fr !important; gap: 1.75rem; }
  .tcard { aspect-ratio: auto !important; }
  .tcard img { height: auto !important; max-height: 50vh; object-fit: cover; }
  .micron { grid-template-columns: 1fr !important; text-align: center; gap: 1.5rem; }
  .micron__big { order: -1; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .tech__grid { grid-template-columns: repeat(2, 1fr) !important; gap: 2rem; }
  .tcard { aspect-ratio: auto !important; }
  .tcard img { height: auto !important; object-fit: cover; }
}

/* AUTOMAÇÃO */
@media (max-width: 1023px) {
  .auto { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .auto__img { max-width: 480px; margin: 0 auto; border-radius: 12px; aspect-ratio: auto; }
}

/* LINHA DE PRODUTOS */
@media (max-width: 767px) {
  .linha__stage { grid-template-columns: 1fr !important; gap: 2rem !important; }
  #linha { padding: 0 1.25rem !important; }
  .model__tabs { overflow-x: auto; scroll-snap-type: x mandatory; gap: 0.5rem; padding-bottom: 6px; scrollbar-width: none; justify-content: center; }
  .model__tabs::-webkit-scrollbar { display: none; }
  .mtab { flex: 0 0 auto; white-space: nowrap; scroll-snap-align: start; padding: 0.5rem 1rem; font-size: 0.85rem; text-align: center; }
  .linha__panel { flex-direction: column !important; align-items: center; text-align: center; gap: 1.5rem; }
  .linha__panel .btn { width: 100%; max-width: 320px; margin: 1rem auto 0; text-align: center; justify-content: center; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .linha__stage { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .model__tabs { flex-wrap: wrap; justify-content: center; }
}

/* FICHA TÉCNICA */
@media (max-width: 1023px) {
  .ficha__wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; border-radius: 8px; }
  .ficha table { display: block; overflow-x: auto; min-width: 600px; width: max-content; }
  .ficha th,.ficha td { padding: 0.75rem 1rem; font-size: 0.82rem; white-space: nowrap; }
}
@media (max-width: 767px) {
  .ficha__specs { grid-template-columns: 1fr !important; gap: 0.5rem; }
}

/* ONDE COMPRAR */
@media (max-width: 1023px) {
  .comprar__grid { flex-direction: column !important; gap: 2.5rem; align-items: center; }
  .comprar__grid > * { width: 100% !important; max-width: 100% !important; }
  .form input,.form select,.form textarea { font-size: 16px !important; border-radius: 8px; }
  .form__submit { width: 100%; padding: 1rem; font-size: 1rem; text-align: center; justify-content: center; }
  .form__submit .btn { text-align: center; justify-content: center; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .comprar__grid { flex-direction: row !important; flex-wrap: wrap; gap: 3rem; }
  .comprar__grid > * { flex: 1 1 300px !important; }
}

/* GARANTIA */
@media (max-width: 767px) {
  .garantia__inner { text-align: center; }
  .gvalue,.garantia__grid { flex-direction: column !important; align-items: center; gap: 1.75rem; }
  .gnum { font-size: clamp(2.5rem, 12vw, 4rem) !important; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .gvalue { flex-wrap: wrap; justify-content: center; gap: 2.5rem; }
  .garantia__grid { grid-template-columns: repeat(3, 1fr) !important; gap: 2rem; }
}

/* INSTALAÇÃO */
@media (max-width: 1023px) {
  .install { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .install__img { border-radius: 12px; aspect-ratio: auto !important; height: auto !important; max-height: 60vh; object-fit: cover; }
}

/* GALERIA REAIS */
@media (max-width: 767px) {
  .real__strip { flex-direction: row !important; overflow-x: auto; scroll-snap-type: x mandatory; gap: 0.75rem; padding-bottom: 8px; scrollbar-width: none; }
  .real__strip::-webkit-scrollbar { display: none; }
  .real__strip img { width: 78vw !important; height: auto !important; aspect-ratio: 3/4; object-fit: cover; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .real__strip { grid-template-columns: repeat(2, 1fr) !important; gap: 1rem; overflow: visible; }
  .real__strip img { width: 100% !important; height: auto !important; aspect-ratio: 3/4; object-fit: cover; }
}

/* VÍDEO BENEFÍCIOS */
@media (max-width: 1023px) {
  .filmstrip__video { width: 100%; max-height: 60vw; border-radius: 8px; }
}

/* FAQ */
@media (max-width: 767px) {
  .faq__item { padding: 1.1rem 0; }
  .faq__item summary { font-size: 0.95rem; padding-right: 1.5rem; }
  .faq__item p { font-size: 0.9rem; margin-top: 0.75rem; opacity: 0.85; }
}

/* REVENDA */
@media (max-width: 767px) {
  .revenda__inner { text-align: center; }
  .revenda__perks { max-width: 360px; margin: 1.5rem auto; padding-left: 1.25rem; text-align: left; }
  .revenda .btn { width: 100%; max-width: 320px; margin: 1.5rem auto 0; text-align: center; justify-content: center; }
}

/* BUTTONS - CENTRALIZADOS */
@media (max-width: 767px) {
  .hero__actions,
  .footer__actions,
  .linha__panel,
  .revenda__inner,
  [class*="btn-group"],
  [class*="cta-group"],
  [class*="actions"],
  .form__submit {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 0.75rem;
    width: 100%;
  }
  .hero__actions .btn,
  .footer__actions .btn,
  .linha__panel .btn,
  .revenda .btn,
  [class*="btn-group"] .btn,
  [class*="btn-group"] a,
  [class*="cta-group"] .btn,
  [class*="cta-group"] a,
  .form__submit .btn {
    width: 100%;
    max-width: 320px;
    text-align: center !important;
    justify-content: center !important;
  }
  .btn {
    text-align: center !important;
    justify-content: center !important;
  }
}

/* FOOTER */
@media (max-width: 767px) {
  .footer { flex-direction: column !important; align-items: center !important; text-align: center !important; padding: 2.5rem 1.25rem !important; gap: 1.5rem; }
  .footer__actions { flex-direction: column; align-items: center; gap: 0.75rem; width: 100%; }
  .footer__actions .btn { width: 100%; max-width: 280px; text-align: center !important; justify-content: center !important; }
  .footer__legal { font-size: 0.75rem; max-width: 340px; margin: 0 auto; opacity: 0.65; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .footer { flex-wrap: wrap !important; padding: 3rem 2.5rem !important; gap: 2rem; }
}

/* OVERFLOW FIXES */
@media (max-width: 1023px) {
  .container,.wrapper,.inner,[class*="container"],[class*="wrapper"],[class*="inner"] { max-width: 100% !important; overflow-x: hidden; }
  input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),select,textarea { font-size: 16px !important; }
  [class*="card"],[class*="item"],[class*="block"] { min-width: 0; }
}

/* ELEMENTOS PAGE */
@media (max-width: 767px) {
  .elem { grid-template-columns: 1fr !important; gap: 2rem !important; text-align: center; }
  .elem__img { aspect-ratio: auto !important; height: auto !important; max-height: 50vh; object-fit: cover; }
  .elem__list { max-width: 360px; margin: 1.5rem auto; padding-left: 1.25rem; text-align: left; }
  .elem--rev { direction: ltr; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .elem { grid-template-columns: 1fr 1fr !important; gap: 2rem !important; }
  .elem__img { aspect-ratio: auto !important; height: auto !important; object-fit: cover; }
  .elem--rev { direction: ltr; }
}

/* MANIFESTO */
@media (max-width: 767px) { .manifesto__text { font-size: clamp(1.2rem, 5vw, 1.8rem) !important; padding: 0 1rem; line-height: 1.4; } }
@media (min-width: 768px) and (max-width: 1023px) { .manifesto__text { font-size: clamp(1.5rem, 3.5vw, 2.2rem) !important; } }

/* REVENDEDORES PAGE */
@media (max-width: 767px) {
  .rev__search { flex-direction: column; }
  .rev__search input { min-width: 100%; }
  .rev__grid { grid-template-columns: 1fr !important; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .rev__grid { grid-template-columns: repeat(2, 1fr) !important; }
}

/* VSL PAGE */
@media (max-width: 767px) {
  .vsl { padding: clamp(60px, 10vh, 100px) 1.25rem clamp(30px, 6vh, 60px) !important; }
  .vsl h1 { font-size: clamp(1.6rem, 6vw, 2.4rem) !important; line-height: 1.15; }
  .vsl__unlock .btn { width: 100%; max-width: 320px; text-align: center !important; justify-content: center !important; }
  .vsl__badges { gap: 0.75rem; font-size: 0.7rem; }
  .vsl__badges span { padding: 0.4em 0.8em; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .vsl { padding: clamp(80px, 12vh, 140px) 3rem clamp(40px, 8vh, 80px) !important; }
  .vsl h1 { font-size: clamp(2rem, 4.5vw, 3rem) !important; }
}