/* Ajustes exclusivos para celular — nada aqui afeta telas acima de 760px */
.m-tabbar, .m-menu-extra, .m-fin{display:none;}

@media (max-width: 760px){
  html, body{overflow-x:clip;}
  body{padding-bottom:calc(68px + env(safe-area-inset-bottom));}
  body.m-lock{overflow:hidden;}
  .wrap{padding:0 18px;}
  input, textarea, select{font-size:16px !important;}

  /* ---------- header ---------- */
  .nav{padding:10px 18px; gap:12px;}
  .logo img{height:30px;}
  .menu-toggle{
    display:flex !important; align-items:center; gap:10px;
    font-size:0 !important; color:var(--white);
    padding:10px 4px 10px 12px; min-height:44px;
  }
  .menu-toggle::before{
    content:"MENU"; font-family:'IBM Plex Mono',monospace; font-size:.72rem; font-weight:600; letter-spacing:.14em;
  }
  .m-burger{position:relative; width:22px; height:14px; display:block;}
  .m-burger i{position:absolute; left:0; width:100%; height:2px; background:currentColor; border-radius:2px; transition:transform .25s, opacity .2s, top .25s;}
  .m-burger i:nth-child(1){top:0;}
  .m-burger i:nth-child(2){top:6px;}
  .m-burger i:nth-child(3){top:12px;}
  header.open .m-burger i:nth-child(1){top:6px; transform:rotate(45deg);}
  header.open .m-burger i:nth-child(2){opacity:0;}
  header.open .m-burger i:nth-child(3){top:6px; transform:rotate(-45deg);}
  header.open .menu-toggle::before{content:"FECHAR";}

  .mobile-panel{
    display:flex !important; position:fixed; left:0; right:0; top:var(--m-header-h, 54px); bottom:0;
    flex-direction:column; padding:8px 22px calc(96px + env(safe-area-inset-bottom));
    background:var(--ink); overflow-y:auto; -webkit-overflow-scrolling:touch;
    opacity:0; visibility:hidden; transform:translateY(-8px);
    transition:opacity .22s, transform .22s, visibility .22s;
  }
  header.open .mobile-panel{opacity:1; visibility:visible; transform:none;}
  .mobile-panel > a{
    font-family:'Zilla Slab',serif; font-weight:700; font-size:1.5rem; color:var(--white);
    padding:14px 0; min-height:56px; border-bottom:1px solid #262626;
    display:flex; align-items:center; justify-content:space-between;
  }
  .mobile-panel > a::after{content:"→"; font-family:'Work Sans',sans-serif; font-size:1rem; color:var(--ember-light);}
  .mobile-panel > a.m-current{color:var(--ember-light);}
  .m-menu-extra{display:flex; flex-direction:column; gap:10px;}
  .m-subcats{display:flex; flex-direction:row; flex-wrap:wrap; gap:8px; padding:12px 0 16px; border-bottom:1px solid #262626;}
  .m-subcats a{
    font-family:'IBM Plex Mono',monospace; font-size:.74rem; color:var(--sand-2);
    border:1.5px solid #3a3a3a; border-radius:20px; padding:9px 14px; min-height:40px; display:inline-flex; align-items:center;
  }
  .m-menu-ctas{display:grid; gap:10px; margin-top:24px;}
  .m-menu-ctas .btn{justify-content:center; padding:16px; font-size:1rem;}
  .m-menu-ctas .m-wa{background:#25D366;}
  .m-menu-foot{margin-top:22px; font-family:'IBM Plex Mono',monospace; font-size:.75rem; color:var(--stone); line-height:1.8;}

  /* ---------- barra inferior ---------- */
  .whatsapp-float{bottom:calc(80px + env(safe-area-inset-bottom)); right:16px; width:54px; height:54px;}
  body.m-lock .whatsapp-float{display:none;}
  .m-tabbar{
    display:grid; grid-template-columns:repeat(5,1fr);
    position:fixed; left:0; right:0; bottom:0; z-index:95;
    background:rgba(20,20,20,.97); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
    border-top:1px solid #2a2a2a; padding:6px 4px calc(6px + env(safe-area-inset-bottom));
  }
  .m-tabbar a{
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px;
    min-height:54px; color:#a9a9a9; font-size:.66rem; font-weight:600; letter-spacing:.01em; text-align:center; line-height:1.1;
  }
  .m-tabbar svg{width:22px; height:22px; stroke:currentColor; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;}
  .m-tabbar a.on{color:var(--white);}
  .m-tabbar a.on svg{stroke:var(--ember-light);}

  /* ---------- home hero ---------- */
  .home-hero{padding:22px 0 40px;}
  .home-hero-grid{gap:0;}
  .home-hero .eyebrow{font-size:.64rem; letter-spacing:.12em; line-height:1.6; display:block;}
  .home-hero h1{font-size:2.3rem !important; margin-top:14px !important; max-width:none;}
  .home-hero-copy p{font-size:1rem; margin-top:16px !important;}
  .home-hero-copy > div{margin-top:22px !important; display:grid !important; grid-template-columns:1fr 1fr; gap:10px !important;}
  .home-hero-copy > div .btn{justify-content:center; padding:14px 10px !important; font-size:.88rem !important; text-align:center;}
  .home-hero-visual{min-height:0 !important; height:340px; margin-top:22px !important; overflow:visible;}
  .hero-slide{align-items:center;}
  .home-hero-visual img{max-height:300px; max-width:100%; width:auto; height:auto; object-fit:contain;}
  .home-hero-visual .glow{bottom:auto; top:50%; transform:translate(-50%,-50%); width:90%; height:70%;}
  .home-hero-tag{left:50%; bottom:0; transform:translateX(-50%); white-space:nowrap; font-size:.64rem; padding:8px 12px;}
  .home-hero > .sparks{top:auto; height:420px;}

  /* ---------- hero das páginas internas ---------- */
  .page-hero{padding:34px 0 30px;}
  .page-hero h1{font-size:2rem;}
  .page-hero p{font-size:.95rem; margin-top:10px;}
  .breadcrumb{font-size:.68rem; margin-bottom:10px;}
  .hero-fire{width:100% !important; max-width:none; height:100%; opacity:.5 !important;
    -webkit-mask-image:linear-gradient(to top, #000 10%, transparent 85%); mask-image:linear-gradient(to top, #000 10%, transparent 85%);}
  .hero-fire video{right:0; bottom:0; width:100%; height:100%;}
  .page-hero .filter-tabs, .filter-tabs, .city-jump{
    flex-wrap:nowrap; overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none;
    margin-left:-18px; margin-right:-18px; padding:2px 18px 6px;
  }
  .filter-tabs::-webkit-scrollbar, .city-jump::-webkit-scrollbar{display:none;}
  .filter-tabs a, .city-jump a{white-space:nowrap; flex-shrink:0; min-height:40px; display:inline-flex; align-items:center;}

  /* ---------- seções ---------- */
  .section{padding:48px 0;}
  .section-head{margin-bottom:26px;}
  .section-head h2{font-size:1.7rem;}
  .section-head p{font-size:.95rem;}
  .dif-card{padding:22px 20px; display:grid; grid-template-columns:44px 1fr; column-gap:16px; align-items:start;}
  .dif-icon{margin-bottom:0; grid-row:span 2;}
  .dif-card h3{margin-bottom:6px;}
  .cat-grid{grid-template-columns:1fr 1fr !important; gap:10px;}
  .cat-card{min-height:0; padding:18px 14px 16px;}
  .cat-card h3{font-size:1rem; margin-top:8px;}
  .cat-card span{font-size:.78rem;}
  .cat-card .btn{margin-top:14px; padding:10px 12px; font-size:.74rem; align-self:stretch; justify-content:center;}

  /* produtos */
  .cat-heading{margin:40px 0 18px; flex-wrap:wrap; gap:6px 12px;}
  .cat-heading h2{font-size:1.4rem;}
  .prod-grid{gap:16px;}
  .prod-body{padding:16px 18px 18px;}
  .prod-body p{margin-bottom:0;}
  .prod-body[style*="padding-top:0"]{padding-top:0;}
  .prod-body .btn{padding:14px;}

  /* página de produto */
  .wrap > div[style*="grid-template-columns:1.05fr"]{grid-template-columns:1fr !important; gap:24px !important;}
  #pdMainPhoto{aspect-ratio:1/1;}
  .pd-info .btn{width:100%; justify-content:center; padding:16px;}
  [role="tablist"]{overflow-x:auto; scrollbar-width:none;}
  [role="tablist"]::-webkit-scrollbar{display:none;}
  .pd-tab{white-space:nowrap; flex-shrink:0; min-height:44px;}
  #pdLightboxClose{top:12px !important; right:14px !important; min-width:44px; min-height:44px;}

  /* obras, passos, tabelas */
  .obras-grid{gap:16px;}
  .steps{gap:18px;}
  .compare{display:block; overflow-x:auto; white-space:nowrap;}
  .module-diagram{transform:scale(.9); transform-origin:left top;}

  /* depoimento / cta */
  .depoimento{padding:40px 18px;}
  .depoimento-head{margin-bottom:18px;}
  .depoimento-inner{padding:30px 22px; border-radius:14px;}
  .depoimento blockquote{font-size:1.1rem;}
  .cta{padding:48px 0;}
  .cta .actions{display:grid; grid-template-columns:1fr; gap:10px;}
  .cta .actions .btn{justify-content:center; padding:15px;}
  #form-avaliacao .btn{align-self:stretch !important; justify-content:center;}

  /* onde comprar */
  .region-block summary{padding:16px 18px; font-size:1.05rem;}
  .region-block .store-list{padding:0 14px 16px; gap:10px;}
  .store-card a{min-height:36px;}
  .not-found-box{padding:32px 22px;}

  /* catálogo, contato */
  .catalog-box{padding:28px 20px; gap:20px;}
  .contato-grid{gap:32px;}
  form .btn{justify-content:center; padding:15px;}
  .map-frame{min-height:260px;}

  /* rodapé */
  footer{padding:40px 0 20px;}
  .footer-top{grid-template-columns:1fr 1fr !important; gap:28px 18px; padding-bottom:28px;}
  .footer-top > div:first-child{grid-column:1 / -1;}
  .footer-top > .footer-col:last-child{grid-column:1 / -1;}
  .footer-col a{padding:9px 0; word-break:break-word;}
  .footer-bottom{flex-direction:column; align-items:flex-start; gap:6px;}
}

/* ---------- Linha Predial (celular) ---------- */
@media (max-width: 760px){
  .pd-hero{min-height:88svh; padding-top:40px; gap:20px; justify-content:flex-end; padding-bottom:0;}
  .pd-hero img{object-position:60% center;}
  .pd-hero-head, .pd-hero-foot{padding-left:18px; padding-right:18px;}
  .pd-hero-index{margin-bottom:12px; font-size:.64rem;}
  .pd-hero-head h1{font-size:1.85rem; line-height:1.15;}
  .pd-hero-foot{padding-bottom:36px; gap:20px;}
  .pd-hero-foot p{font-size:.98rem;}
  .pd-hero-actions{display:grid; grid-template-columns:1fr; gap:10px; width:100%;}
  .pd-hero-actions .btn{justify-content:center; padding:15px;}
  .pd-hero + div[aria-hidden]{height:0 !important;}

  .pd-intro2, .pd-statement, .pd-grid-section{padding:52px 18px 0;}
  .pd-intro2-title{margin-bottom:24px;}
  .pd-intro2-title h2, .pd-statement h2{font-size:1.9rem;}
  .pd-intro2-row{gap:18px;}
  .pd-intro2-media{aspect-ratio:4/3; margin-left:-18px; margin-right:-18px;}
  .pd-intro2-media img{object-fit:cover; object-position:center;}
  .pd-intro2-text, .pd-grid-text{margin-bottom:40px;}
  .pd-intro2-text p, .pd-grid-text p, .pd-collage-head p{font-size:1rem;}
  .pd-statement-grid{display:block;}
  .pd-statement p{font-size:.98rem; margin-top:16px;}
  .pd-statement-gallery{margin:28px -18px 0; gap:6px;}
  .pd-statement-gallery img{aspect-ratio:1/1;}

  .pd-grid-inner{gap:18px;}
  .pd-grid-media-a{margin-left:-18px; width:calc(100% + 36px); aspect-ratio:4/3;}
  .pd-grid-media-a img{-webkit-mask-image:none; mask-image:none;}
  .pd-grid-media-a .pd-grid-overlap{display:none;}

  .pd-collage{padding:52px 18px 40px;}
  .pd-collage-inner{gap:20px;}
  .pd-collage-head h2{font-size:1.9rem; margin:10px 0 14px;}
  .pd-collage.pd-light .pd-collage-main{aspect-ratio:auto; margin:0 -18px; width:calc(100% + 36px);}
  .pd-collage.pd-light .pd-collage-main img{height:auto; width:100%; max-width:100%;}

  /* troca a animação fixa por carrossel */
  .pd-sticky{display:none !important;}
  .m-fin{display:block; background:#000; padding:52px 0 44px;}
  .m-fin-head{padding:0 18px; margin-bottom:22px;}
  .m-fin-head h2{color:#fff; font-size:1.9rem; margin-top:10px;}
  .m-fin-track{display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; padding:0 18px; scroll-padding:0 18px; scrollbar-width:none;}
  .m-fin-track::-webkit-scrollbar{display:none;}
  .m-fin-card{flex:0 0 84%; scroll-snap-align:start; background:#141414; border:1px solid #262626; display:flex; flex-direction:column;}
  .m-fin-img{aspect-ratio:4/5; overflow:hidden; background:#0a0a0a;}
  .m-fin-img img{width:100%; height:100%; object-fit:cover; display:block;}
  .m-fin-body{padding:18px 18px 22px;}
  .m-fin-n{font-family:'IBM Plex Mono',monospace; font-size:.7rem; letter-spacing:.14em; color:var(--ember-light);}
  .m-fin-body h3{color:#fff; font-size:1.5rem; margin:8px 0 8px;}
  .m-fin-body p{color:rgba(255,255,255,.66); font-size:.95rem; line-height:1.55;}
  .m-fin-dots{display:flex; justify-content:center; gap:4px; margin-top:16px;}
  .m-fin-dots button{width:28px; height:28px; border:0; background:none; padding:0; display:flex; align-items:center; justify-content:center; cursor:pointer;}
  .m-fin-dots button::before{content:""; width:8px; height:8px; border-radius:50%; background:#444; transition:background .2s, width .2s;}
  .m-fin-dots button.on::before{background:var(--ember-light); width:20px; border-radius:4px;}

  .pd-spec-media{height:auto; padding:40px 18px 0; position:relative;}
  .pd-spec-media img{max-width:70%; max-height:340px;}
  .pd-spec-list{padding:36px 18px 48px;}
  .pd-spec-head{margin-bottom:22px;}
  .pd-spec-head h2{font-size:1.8rem;}
  .pd-spec-item{gap:14px; padding:18px 0;}

  .pd-cinematic{min-height:70svh;}
  .pd-cinematic-content h2{font-size:2.2rem;}
  .pd-cinematic-content p{font-size:.98rem;}

  .pd-cta-hero{min-height:0; padding:80px 0 56px; align-items:flex-end;}
  .pd-cta-hero-content{padding:0 18px;}
  .pd-cta-hero-content h2{font-size:1.8rem !important;}
  .pd-cta-hero-content p{margin-top:16px !important; margin-bottom:24px; font-size:.98rem;}
  .pd-cta-actions{display:grid; grid-template-columns:1fr; gap:10px;}
  .pd-cta-actions .btn{justify-content:center; padding:15px;}
  .reveal{transform:translateY(16px); transition-duration:.55s;}
}

/* ---------- revisão geral (celular) ---------- */
@media (max-width: 760px){
  a, button, summary{-webkit-tap-highlight-color:transparent;}
  .btn:active{transform:scale(.98); background:var(--ember-light);}
  .btn:hover{transform:none;}

  /* grupos de botões em largura total */
  .wrap div[style*="flex-wrap:wrap"] > .btn, .wrap div[style*="flex-wrap: wrap"] > .btn{flex:1 1 100%; justify-content:center; padding:15px;}
  .cta .wrap > .btn{display:flex; justify-content:center; padding:15px;}

  /* produtos: 2 por linha, cards compactos */
  .prod-grid{grid-template-columns:1fr 1fr !important; gap:10px;}
  .prod-card .photo-ph{aspect-ratio:1/1;}
  .prod-body{padding:12px 12px 12px;}
  .prod-body .eyebrow{font-size:.58rem; letter-spacing:.12em;}
  .prod-body h3{font-size:.98rem; margin:5px 0 0; line-height:1.15;}
  .prod-body p{display:none;}
  .prod-body[style*="padding-top:0"]{padding:0 12px 12px; margin-top:auto;}
  .prod-body .btn{padding:11px 6px; font-size:.74rem; gap:4px;}
  .cat-heading span{font-size:.68rem;}

  /* página de produto */
  #pdThumbs{flex-wrap:nowrap !important; overflow-x:auto; scrollbar-width:none; margin-right:-18px; padding-right:18px;}
  #pdThumbs::-webkit-scrollbar{display:none;}
  #pdThumbs .pd-thumb{flex:0 0 72px; width:72px !important; height:72px !important;}
  .pd-info h2{font-size:1.6rem !important;}

  /* onde comprar */
  .city-search{position:sticky; top:var(--m-header-h, 54px); z-index:20; margin:18px -18px 6px; padding:10px 18px; max-width:none; background:var(--sand-2);}
  .city-search svg{right:34px;}
  .region-state{margin:26px 0 10px;}
  .store-card{padding:14px 14px;}
  .store-card .m-store-actions{display:flex; gap:8px; margin:8px 0 6px; flex-wrap:wrap;}
  .store-card .m-store-actions a{flex:1 1 0; min-width:120px; justify-content:center; min-height:42px; padding:0 10px; border:1.5px solid var(--ember); border-radius:2px; font-size:.72rem; font-weight:600; color:var(--ember); background:var(--white);}
  .store-card .m-store-actions a.m-wa{border-color:#25D366; background:#25D366; color:#fff;}
  .qq-link{margin:4px 0 24px;}
  .buy-steps{gap:18px;}
  .buy-step{display:grid; grid-template-columns:38px 1fr; column-gap:14px;}
  .buy-step .num{grid-row:span 2; margin-bottom:0;}
  .buy-step h3{margin-bottom:4px;}

  /* contato */
  .info-block{margin-bottom:20px; padding-left:16px;}
  .info-block p{font-size:.95rem; word-break:break-word;}
  .contato-grid > div[style*="align-items:flex-start"]{align-items:stretch !important;}

  /* catálogo */
  .catalog-box{flex-direction:column; align-items:flex-start; text-align:left;}
  .catalog-box img.catalog-icon{width:120px; height:auto;}
  .catalog-box .btn{width:100%; justify-content:center; padding:15px;}

  /* revendedores: depoimento sem caixa interna */
  .depoimento > .wrap{padding:0;}

  /* obras */
  .obra-card .photo-ph{aspect-ratio:3/4;}
}

@media (max-width: 380px){
  .home-hero h1{font-size:2rem !important;}
  .home-hero-copy > div{grid-template-columns:1fr;}
  .m-tabbar a{font-size:.6rem;}
}
