
/* ==========================================================
   M3 TECHNOLOGY — MOBILE V2 ONLY
   IMPORTANTE: TODAS AS REGRAS DESTE ARQUIVO EXISTEM SOMENTE
   DENTRO DE @media(max-width:760px).
   DESKTOP NÃO É ALTERADO.
   ========================================================== */

@media(max-width:760px){

  /* ---------- Base ---------- */
  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  body{
    -webkit-text-size-adjust:100%!important;
  }

  .container{
    width:auto!important;
    max-width:none!important;
    margin-left:16px!important;
    margin-right:16px!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  /* ---------- Header mobile: Home + Produto ---------- */
  .project-topbar{
    display:none!important;
  }

  .project-header{
    position:sticky!important;
    top:0!important;
    z-index:9999!important;
    min-height:64px!important;
    background:#031427!important;
    box-shadow:0 3px 18px rgba(0,0,0,.18)!important;
  }

  .project-header::after{
    height:2px!important;
  }

  .project-nav{
    position:relative!important;
    min-height:64px!important;
    width:auto!important;
    max-width:none!important;
    margin:0 14px!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:42px 1fr 42px 42px!important;
    gap:7px!important;
    align-items:center!important;
  }

  .project-logo{
    grid-column:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
  }

  .project-logo img{
    display:block!important;
    width:auto!important;
    height:auto!important;
    max-width:96px!important;
    max-height:43px!important;
    object-fit:contain!important;
  }

  .mobile-menu-btn,
  .mobile-back-btn,
  .mobile-search-btn,
  .mobile-wa-btn{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    border-radius:11px!important;
    align-items:center!important;
    justify-content:center!important;
  }

  .mobile-menu-btn,
  .mobile-back-btn,
  .mobile-search-btn{
    display:flex!important;
    border:1px solid rgba(116,177,234,.16)!important;
    background:rgba(255,255,255,.025)!important;
    color:#fff!important;
  }

  .mobile-wa-btn{
    display:flex!important;
    border:1px solid rgba(63,196,121,.28)!important;
    background:rgba(12,72,59,.34)!important;
    color:#fff!important;
  }

  .mobile-menu-btn svg,
  .mobile-back-btn svg,
  .mobile-search-btn svg,
  .mobile-wa-btn svg{
    width:21px!important;
    height:21px!important;
  }

  .header-wa-icon,
  .project-back{
    display:none!important;
  }

  /* Home menu */
  .project-links{
    display:none!important;
  }

  .project-links.mobile-open{
    position:absolute!important;
    top:58px!important;
    left:0!important;
    right:0!important;
    z-index:10001!important;
    display:flex!important;
    flex-direction:column!important;
    gap:0!important;
    padding:8px!important;
    background:#061a30!important;
    border:1px solid rgba(78,157,231,.20)!important;
    border-radius:14px!important;
    box-shadow:0 18px 38px rgba(0,0,0,.34)!important;
  }

  .project-links.mobile-open a{
    display:flex!important;
    align-items:center!important;
    min-height:46px!important;
    padding:0 13px!important;
    border-bottom:1px solid rgba(255,255,255,.06)!important;
    color:#fff!important;
    font-size:14px!important;
  }

  .project-links.mobile-open a:last-child{
    border-bottom:0!important;
  }

  /* Mobile search */
  .project-search{
    display:none!important;
  }

  .project-search.mobile-search-open{
    position:absolute!important;
    top:58px!important;
    left:0!important;
    right:0!important;
    z-index:10002!important;
    display:flex!important;
    width:auto!important;
    height:48px!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    border:1px solid #dce4ed!important;
    border-radius:12px!important;
    box-shadow:0 16px 36px rgba(0,0,0,.20)!important;
    overflow:hidden!important;
  }

  .project-search.mobile-search-open button{
    width:46px!important;
    min-width:46px!important;
    background:#fff!important;
    color:#122033!important;
  }

  .project-search.mobile-search-open input{
    width:100%!important;
    min-width:0!important;
    height:46px!important;
    border:0!important;
    outline:0!important;
    padding:0 12px 0 2px!important;
    font-size:16px!important;
  }

  /* ---------- HOME: Hero mobile ---------- */
  .project-hero.project-hero-layered{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
    background:#04162b!important;
  }

  .project-hero-layered::before,
  .project-hero-layered::after{
    display:none!important;
  }

  .project-hero .project-hero-grid{
    order:1!important;
    width:auto!important;
    min-height:0!important;
    height:auto!important;
    margin:0 16px!important;
    padding:0!important;
  }

  .project-hero-copy{
    width:100%!important;
    max-width:none!important;
    min-height:0!important;
    height:auto!important;
    padding:34px 0 30px!important;
    display:block!important;
  }

  .project-hero-copy .eyebrow{
    margin:0 0 9px!important;
    font-size:11px!important;
    letter-spacing:.12em!important;
  }

  .project-hero-copy h1{
    max-width:100%!important;
    margin:0!important;
    font-size:39px!important;
    line-height:.99!important;
    letter-spacing:-.045em!important;
  }

  .project-hero-copy p{
    max-width:100%!important;
    margin:15px 0 0!important;
    font-size:14px!important;
    line-height:1.52!important;
    color:#c0ccda!important;
  }

  .project-hero-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:9px!important;
    margin-top:22px!important;
  }

  .project-primary-btn,
  .project-secondary-btn{
    width:100%!important;
    min-width:0!important;
    min-height:48px!important;
    padding:0 12px!important;
    border-radius:12px!important;
    justify-content:center!important;
    font-size:13px!important;
    white-space:nowrap!important;
  }

  .project-primary-btn svg,
  .project-secondary-btn svg{
    width:17px!important;
    height:17px!important;
  }

  /* Use the exact user hero image as a separate proportional mobile visual.
     It does not affect desktop. */
  .m3-hero-direct{
    order:2!important;
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    filter:none!important;
  }

  .hero-visual-layer,
  .project-hero-art{
    display:none!important;
  }

  /* ---------- HOME: banners ---------- */
  .banner-strip{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin-top:18px!important;
    margin-bottom:8px!important;
  }

  .banner-card{
    min-height:130px!important;
  }

  /* ---------- HOME: Catálogo ---------- */
  .catalog-section{
    padding:42px 0 48px!important;
  }

  .section-head{
    display:block!important;
    margin-bottom:16px!important;
  }

  .section-head h2{
    margin:5px 0 0!important;
    font-size:29px!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }

  .section-head .search{
    width:100%!important;
    max-width:none!important;
    margin-top:18px!important;
    display:grid!important;
    grid-template-columns:1fr auto!important;
  }

  .section-head .search input{
    width:100%!important;
    min-width:0!important;
    height:44px!important;
    padding:0 12px!important;
    font-size:16px!important;
  }

  .section-head .search button{
    height:44px!important;
    padding:0 16px!important;
  }

  .chips{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    overflow-x:auto!important;
    padding:1px 0 10px!important;
    margin:0 0 14px!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }

  .chips::-webkit-scrollbar{
    display:none!important;
  }

  .chip{
    flex:0 0 auto!important;
    white-space:nowrap!important;
    padding:9px 14px!important;
  }

  .product-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:16px!important;
  }

  .product-card{
    width:100%!important;
    max-width:none!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }

  .product-image{
    min-height:235px!important;
    padding:18px!important;
  }

  .product-image img{
    width:100%!important;
    height:195px!important;
    max-height:195px!important;
    object-fit:contain!important;
  }

  .product-body{
    padding:16px!important;
  }

  .product-body h3{
    margin:5px 0 7px!important;
    font-size:20px!important;
    line-height:1.14!important;
  }

  .product-body p{
    font-size:14px!important;
    line-height:1.48!important;
  }

  .card-actions{
    gap:12px!important;
  }

  .market-mini{
    margin-top:12px!important;
  }

  .market-icon-link{
    width:36px!important;
    height:36px!important;
  }

  /* ---------- HOME: Marketplaces ---------- */
  .marketplaces-home{
    padding:46px 0!important;
  }

  .marketplaces-heading{
    display:block!important;
    margin-bottom:18px!important;
  }

  .marketplaces-heading h2{
    margin:5px 0 8px!important;
    font-size:28px!important;
    line-height:1.08!important;
  }

  .marketplaces-heading p{
    font-size:14px!important;
    line-height:1.55!important;
  }

  .marketplaces-store-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  .marketplace-store-card{
    min-height:100px!important;
    grid-template-columns:54px 1fr 24px!important;
    gap:13px!important;
    padding:17px!important;
    border-radius:15px!important;
  }

  .marketplace-store-icon{
    width:52px!important;
    height:52px!important;
    border-radius:12px!important;
  }

  .marketplace-store-card strong{
    font-size:19px!important;
  }

  /* ---------- HOME: Sobre ---------- */
  .about{
    padding:44px 0!important;
  }

  .about-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .about-grid h2{
    margin:6px 0 0!important;
    font-size:29px!important;
    line-height:1.08!important;
  }

  .about-grid p{
    margin:0!important;
    font-size:14px!important;
    line-height:1.62!important;
  }

  /* ---------- HOME: Contato ---------- */
  .contact{
    padding:40px 0!important;
  }

  .contact-box{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:22px!important;
    padding:24px 20px!important;
    border-radius:18px!important;
  }

  .contact-box h2{
    margin:6px 0 9px!important;
    font-size:27px!important;
    line-height:1.09!important;
  }

  .contact-box p{
    margin:0!important;
    font-size:14px!important;
    line-height:1.55!important;
  }

  .contact-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
  }

  .contact-actions .btn{
    width:100%!important;
    min-height:48px!important;
    justify-content:center!important;
  }

  /* ---------- HOME footer ---------- */
  footer{
    padding:24px 0!important;
  }

  .footer{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:13px!important;
    justify-items:center!important;
    text-align:center!important;
  }

  .footer img{
    max-width:76px!important;
    max-height:30px!important;
  }

  /* ==========================================================
     PÁGINA DO PRODUTO — SOMENTE MOBILE
     ========================================================== */

  .product-project-header .project-nav{
    grid-template-columns:42px 1fr 42px 42px!important;
  }

  .product-page{
    padding-top:22px!important;
  }

  .product-detail{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:24px!important;
    margin-left:16px!important;
    margin-right:16px!important;
  }

  .detail-image{
    width:100%!important;
    min-height:0!important;
    aspect-ratio:1 / 1!important;
    padding:16px!important;
    border-radius:16px!important;
  }

  .detail-image img{
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    object-fit:contain!important;
  }

  .gallery-thumbs{
    display:flex!important;
    gap:8px!important;
    overflow-x:auto!important;
    padding:10px 0 3px!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }

  .gallery-thumbs::-webkit-scrollbar{
    display:none!important;
  }

  .gallery-thumbs button{
    flex:0 0 64px!important;
    width:64px!important;
    height:64px!important;
    padding:5px!important;
  }

  .gallery-thumbs img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
  }

  .detail-copy{
    padding:0!important;
  }

  .detail-copy .eyebrow{
    font-size:11px!important;
    letter-spacing:.11em!important;
  }

  .detail-copy h1{
    margin:7px 0 13px!important;
    font-size:31px!important;
    line-height:1.04!important;
    letter-spacing:-.035em!important;
  }

  .meta{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }

  .meta span{
    min-width:0!important;
    padding:10px 11px!important;
    border-radius:10px!important;
  }

  .price{
    margin:13px 0!important;
    font-size:28px!important;
  }

  .lead{
    font-size:15px!important;
    line-height:1.55!important;
  }

  .detail-copy .btn.wide{
    width:100%!important;
    min-height:50px!important;
    padding:0 14px!important;
    text-align:center!important;
    justify-content:center!important;
  }

  .product-marketplaces{
    margin-top:14px!important;
    padding-top:15px!important;
  }

  .product-market-buttons{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }

  .market-buy-button{
    min-height:58px!important;
  }

  .description-section,
  .spec-section{
    margin-left:16px!important;
    margin-right:16px!important;
    padding:20px 17px!important;
    border-radius:16px!important;
  }

  .description-section{
    margin-top:24px!important;
  }

  .spec-section{
    margin-top:18px!important;
  }

  .description-section h2,
  .spec-section h2{
    margin:6px 0 14px!important;
    font-size:25px!important;
    line-height:1.08!important;
  }

  .description-body{
    font-size:14px!important;
    line-height:1.62!important;
  }

  .spec-table>div{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:3px!important;
    padding:11px 12px!important;
  }

  .spec-table strong{
    font-size:13px!important;
  }

  .spec-table span{
    font-size:14px!important;
  }

  .product-benefits{
    margin-top:30px!important;
    padding:0 16px 24px!important;
  }

  .benefits-grid{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:1px!important;
    margin:0!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }

  .benefits-grid>div{
    min-height:94px!important;
    padding:15px 10px!important;
    flex-direction:column!important;
    justify-content:center!important;
    text-align:center!important;
    gap:8px!important;
  }

  .benefits-grid span{
    font-size:12px!important;
    line-height:1.3!important;
  }

  .premium-footer{
    padding:24px 0!important;
  }

  .premium-footer-inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    justify-items:center!important;
    text-align:center!important;
  }

  .premium-footer-inner img{
    max-width:76px!important;
    max-height:30px!important;
  }
}

/* Telefones mais estreitos: ainda SOMENTE mobile */
@media(max-width:390px){
  .project-hero-copy h1{
    font-size:35px!important;
  }

  .project-hero-actions{
    grid-template-columns:1fr!important;
  }

  .section-head h2,
  .about-grid h2{
    font-size:27px!important;
  }

  .detail-copy h1{
    font-size:28px!important;
  }

  .meta{
    grid-template-columns:1fr!important;
  }
}
