/* Camada responsiva — carregada depois de styles.css em todas as páginas. */
:root{--ix-pad-x:32px}
@media (max-width:700px){:root{--ix-pad-x:20px}}

/* ---------- Barra de contato ---------- */
.ix-topbar-inner{padding-top:4px;padding-bottom:4px}
.ix-tb-icon{min-width:32px;justify-content:center}
@media (max-width:860px){.ix-tb-phone-label{display:none}}
@media (max-width:700px){.ix-topbar-inner{padding-top:9px;padding-bottom:9px;gap:6px!important}.ix-tb-icon{min-width:40px;min-height:26px}}
@media (max-width:560px){.ix-topbar-social{display:none}}

/* ---------- Header / menu mobile ---------- */
.ix-burger{display:none}
@media (max-width:900px){
  .ix-nav-desktop{display:none!important}
  .ix-burger{display:flex;align-items:center;justify-content:center;width:46px;height:42px;margin-right:-10px;background:transparent;border:0;cursor:pointer;flex:none}
  .ix-burger-mark{display:flex;flex-direction:column;justify-content:center;gap:5px;width:26px}
  .ix-burger-mark span{display:block;height:3px;border-radius:1px;background:#fff}
  .ix-burger-mark span:last-child{background:var(--indumax-red,#e30613);width:17px}
  .ix-burger:active .ix-burger-mark span:last-child{width:26px}
  .ix-header-inner{flex-wrap:nowrap!important;row-gap:0!important;padding-top:12px!important;padding-bottom:12px!important}
}
.ix-drawer-scrim{position:fixed;inset:0;background:rgba(4,10,22,.62);z-index:120;opacity:0;pointer-events:none;transition:opacity .22s ease}
.ix-drawer-scrim[data-open="1"]{opacity:1;pointer-events:auto}
.ix-drawer{position:fixed;top:0;right:0;bottom:0;width:min(86vw,340px);z-index:121;background:var(--blue-950,#060e1e);box-shadow:-14px 0 40px rgba(0,0,0,.4);transform:translateX(100%);visibility:hidden;transition:transform .26s cubic-bezier(.4,0,.2,1),visibility .26s;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;padding-bottom:env(safe-area-inset-bottom)}
.ix-drawer[data-open="1"]{transform:translateX(0);visibility:visible}
.ix-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 14px 20px;border-bottom:1px solid rgba(255,255,255,.1)}
.ix-drawer-close{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:transparent;border:0;cursor:pointer;flex:none}
.ix-drawer a{display:flex;align-items:center;min-height:50px;padding:0 20px;font-family:var(--font-display);font-weight:600;font-size:17px;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.07)}
.ix-drawer a:active{background:rgba(255,255,255,.08)}
.ix-drawer .ix-dw-group{font-family:var(--font-display);font-weight:700;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.42);padding:22px 20px 8px}
.ix-drawer a.ix-dw-sub{font-size:15.5px;font-weight:600;color:rgba(255,255,255,.82);min-height:46px}
.ix-drawer .ix-dw-foot{margin-top:auto;padding:22px 20px 26px;display:flex;flex-direction:column;gap:12px}
.ix-drawer .ix-dw-cta{display:flex;align-items:center;justify-content:center;min-height:52px;border-radius:8px;background:var(--indumax-red,#e30613);color:#fff;font-family:var(--font-display);font-weight:700;font-size:16px;border:0;cursor:pointer;text-decoration:none}
.ix-drawer .ix-dw-tel{display:flex;align-items:center;gap:8px;min-height:44px;font-family:var(--font-display);font-weight:600;font-size:15px;color:rgba(255,255,255,.8);text-decoration:none;border:0!important;padding:0 2px!important}

/* ---------- Hero ---------- */
@media (max-width:700px){
  .ix-hero-title{min-height:0!important}
  .ix-hero-dot{width:36px!important;height:40px!important}
}

/* ---------- Alvos de toque ---------- */
@media (max-width:900px){
  .ix-flink,.ix-tlink{min-height:32px;display:inline-flex;align-items:center}
}

/* ---------- Mobile: densidade e ritmo (≤700px) ---------- */
@media (max-width:700px){
  section[id]{padding-top:44px!important;padding-bottom:44px!important}
  /* Clientes: 3 logos por linha em vez de 1 */
  #clientes [style*="minmax(170px"]{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-top:24px!important}
  #clientes [style*="minmax(170px"] > *{min-height:0!important;height:64px!important;padding:10px!important}
  #clientes [style*="minmax(170px"] img{max-width:100%!important;max-height:30px!important;object-fit:contain}
  /* Blog: carrossel com deslize lateral */
  #blog [style*="minmax(260px"]{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px!important;margin-left:calc(-1 * var(--ix-pad-x));margin-right:calc(-1 * var(--ix-pad-x));padding:4px var(--ix-pad-x) 10px;scroll-padding-left:var(--ix-pad-x);scrollbar-width:none;-webkit-overflow-scrolling:touch}
  #blog [style*="minmax(260px"]::-webkit-scrollbar{display:none}
  #blog [style*="minmax(260px"] > *{flex:0 0 80%;scroll-snap-align:start}
  /* Soluções: cartões mais compactos */
  #solucoes [style*="minmax(240px"]{gap:12px!important;margin-top:24px!important}
  /* Certificações: selos menores, menos vazio */
  #certificacoes [style*="gap: 48px"]{gap:28px!important;margin-top:28px!important}
  #certificacoes img{height:104px!important;width:auto!important}
  #certificacoes .ix-grid-split{gap:18px!important}
  /* Títulos e textos */
  section h2{text-wrap:balance}
  section p{text-wrap:pretty}
}

/* ---------- Alvos de toque mínimos (≤700px) ---------- */
@media (max-width:700px){
  .ix-hero-dot{position:relative}
  .ix-hero-dot::after{content:"";position:absolute;inset:-10px -4px}
  .ix-topbar a{min-height:36px;display:inline-flex;align-items:center}
  footer a{min-height:40px;display:inline-flex;align-items:center}
  #blog a[href="blog.html"],#cases a[href="cases.html"]{min-height:44px;display:inline-flex;align-items:center}
  input,select,textarea{font-size:16px!important}
  /* Blog: no celular o carrossel desliza; setas de página ficam ocultas ("Ver todos os artigos" leva ao resto) */
  #blog button[aria-label="Publicações anteriores"],#blog button[aria-label="Próximas publicações"]{display:none!important}
  /* Rodapé: colunas de links lado a lado */
  .ix-footer-grid{grid-template-columns:1fr 1fr!important;gap:28px 16px!important}
  .ix-footer-grid > :first-child{grid-column:1 / -1}
  footer .ix-toplink{min-width:40px;min-height:40px;justify-content:center;align-items:center}
  footer a.ix-flink{min-height:34px}
  /* Post do blog: imagem de capa menor no celular */
  article [style*="height: 320px"]{height:200px!important;margin-bottom:22px!important}
  article h1{font-size:30px!important}
}
