/* IT310RESPONSIVE_DEVICE_PASS1
   Camada final de responsividade por dispositivo.
   Escopo: mobile/tablet/notebook/desktop, AVA/AVADOG, fundo em scroll, header, cards, botões e prompt PWA.
   Não altera textos, rotas, ferramentas, motores, backend, QR ou identidade. */

:root{
  --it-rdp-safe-bottom:env(safe-area-inset-bottom,0px);
  --it-rdp-safe-top:env(safe-area-inset-top,0px);
}

html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

body{
  overflow-x:hidden!important;
}

@supports (min-height:100dvh){
  body{min-height:100dvh!important;}
}

@media (max-width:1024px){
  html,body{min-height:100svh;}

  .space-bg,
  body .bg,
  body.infotech-public-page .bg,
  body.infotech-public-page.home-lab-reference4 .home-lab-bg,
  body.infotech-public-page.sistemas-home-standard1 .home-lab-bg,
  body.ixdesk-software-page .ixdesk-bg-layer,
  body.ixdesk-software-page .ixdesk-mountains{
    background-attachment:scroll!important;
    transform:translateZ(0)!important;
    backface-visibility:hidden!important;
    will-change:auto!important;
  }

  .space-bg,
  body.infotech-public-page.home-lab-reference4 .home-lab-bg,
  body.infotech-public-page.sistemas-home-standard1 .home-lab-bg,
  body.ixdesk-software-page .ixdesk-bg-layer{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    min-height:100svh!important;
    height:100dvh!important;
    pointer-events:none!important;
  }

  body.infotech-public-page header.it-top,
  body.ixdesk-software-page .ixdesk-it-top,
  body.fixturebridge-page .it-global-header,
  body.fixture-bridge-page .it-global-header,
  body.fixture-builder-page .it-global-header{
    width:min(100% - 28px,760px)!important;
    max-width:760px!important;
    margin:12px auto 16px!important;
    padding-top:calc(0px + var(--it-rdp-safe-top))!important;
    box-sizing:border-box!important;
  }

  body.infotech-public-page header.it-top .it-topbar,
  body.ixdesk-software-page .ixdesk-it-topbar{
    min-height:auto!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    align-items:start!important;
    padding:10px!important;
    border-radius:18px!important;
  }

  body.infotech-public-page header.it-top .it-brand,
  body.ixdesk-software-page .ixdesk-it-brand,
  body.fixturebridge-page .it-global-brand,
  body.fixture-bridge-page .it-global-brand,
  body.fixture-builder-page .it-global-brand{
    min-width:0!important;
    max-width:100%!important;
  }

  body.infotech-public-page header.it-top .it-brand img,
  body.ixdesk-software-page .ixdesk-it-brand img,
  body.fixturebridge-page .it-global-brand img,
  body.fixture-bridge-page .it-global-brand img,
  body.fixture-builder-page .it-global-brand img{
    width:36px!important;
    height:36px!important;
  }

  body.infotech-public-page header.it-top .it-brand span span,
  body.ixdesk-software-page .ixdesk-it-brand span span,
  body.fixturebridge-page .it-global-brand em,
  body.fixture-bridge-page .it-global-brand em,
  body.fixture-builder-page .it-global-brand em{
    max-width:calc(100vw - 112px)!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  body.infotech-public-page header.it-top .it-nav,
  body.ixdesk-software-page .ixdesk-it-nav{
    width:100%!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    gap:8px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding-bottom:5px!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:thin!important;
  }

  body.infotech-public-page header.it-top .it-nav a,
  body.ixdesk-software-page .ixdesk-it-nav a{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    min-height:36px!important;
    height:36px!important;
    padding:0 12px!important;
    font-size:.78rem!important;
    line-height:1!important;
  }

  body.infotech-public-page header.it-top .it-specialist-btn,
  body.ixdesk-software-page .ixdesk-it-specialist-btn{
    width:100%!important;
    min-height:38px!important;
    padding:9px 12px!important;
    font-size:.78rem!important;
  }

  body.infotech-public-page header.it-top .it-lang-row,
  body.ixdesk-software-page .ixdesk-it-lang-row,
  body.fixturebridge-page .it-global-lang,
  body.fixture-bridge-page .it-global-lang,
  body.fixture-builder-page .it-global-lang{
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:thin!important;
  }

  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 main.home-lab-main,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 main.sistemas-home-main,
  body.infotech-public-page.software-app-page main,
  body.infotech-public-page.software-app-page footer.foot,
  body.infotech-public-page.software-product-axis2 main,
  body.infotech-public-page.software-product-axis2 footer.foot{
    width:min(760px,calc(100vw - 36px))!important;
    max-width:760px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 .home-lab-hero,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 .sistemas-home-hero{
    min-height:auto!important;
    padding-top:22px!important;
    padding-bottom:16px!important;
    margin-bottom:18px!important;
  }

  body.infotech-public-page.software-app-page .software-hero-shell,
  body.infotech-public-page.software-product-axis2 .app-suite-grid,
  body.ixdesk-software-page .ixdesk-app-grid,
  body.ixdesk-software-page .ixdesk-managed-grid{
    gap:14px!important;
  }

  body.infotech-public-page.software-app-page .software-hero-shell{
    padding:22px!important;
    border-radius:26px!important;
  }

  body.infotech-public-page.software-app-page .software-hero-panel{
    min-height:210px!important;
    padding:16px!important;
  }

  body .infotech-support-float,
  body .infotech-support-float.open,
  body .infotech-support-float.talking,
  body.fixture-builder-page .infotech-support-float,
  body.fixture-builder-page .infotech-support-float.open,
  body.fixture-builder-page .infotech-support-float.talking,
  body.fixturebridge-page .infotech-support-float,
  body.fixturebridge-page .infotech-support-float.open,
  body.fixturebridge-page .infotech-support-float.talking,
  body.fixture-bridge-page .infotech-support-float,
  body.fixture-bridge-page .infotech-support-float.open,
  body.fixture-bridge-page .infotech-support-float.talking{
    right:10px!important;
    bottom:calc(10px + var(--it-rdp-safe-bottom))!important;
    width:110px!important;
    height:110px!important;
    max-width:110px!important;
    max-height:110px!important;
  }

  body .infotech-support-float .support-mascot-btn,
  body.fixture-builder-page .infotech-support-float .support-mascot-btn,
  body.fixturebridge-page .infotech-support-float .support-mascot-btn,
  body.fixture-bridge-page .infotech-support-float .support-mascot-btn{
    width:110px!important;
    height:110px!important;
    min-width:110px!important;
    min-height:110px!important;
    max-width:110px!important;
    max-height:110px!important;
    border-radius:25px!important;
  }

  body .infotech-support-float .support-mascot-btn video,
  body.fixture-builder-page .infotech-support-float .support-mascot-btn video,
  body.fixturebridge-page .infotech-support-float .support-mascot-btn video,
  body.fixture-bridge-page .infotech-support-float .support-mascot-btn video{
    object-fit:cover!important;
    transform:scale(1.18)!important;
  }

  body .infotech-support-float .support-mascot-btn img,
  body.fixture-builder-page .infotech-support-float .support-mascot-btn img,
  body.fixturebridge-page .infotech-support-float .support-mascot-btn img,
  body.fixture-bridge-page .infotech-support-float .support-mascot-btn img{
    object-fit:contain!important;
    transform:scale(1.04)!important;
  }

  body .infotech-support-float .support-bubble,
  body.fixture-builder-page .infotech-support-float .support-bubble,
  body.fixturebridge-page .infotech-support-float .support-bubble,
  body.fixture-bridge-page .infotech-support-float .support-bubble{
    bottom:112px!important;
    width:min(286px,calc(100vw - 20px))!important;
    max-width:calc(100vw - 20px)!important;
  }

  body .infotech-support-float .support-card,
  body.fixture-builder-page .infotech-support-float .support-card,
  body.fixturebridge-page .infotech-support-float .support-card,
  body.fixture-bridge-page .infotech-support-float .support-card{
    bottom:176px!important;
    width:min(286px,calc(100vw - 20px))!important;
    max-width:calc(100vw - 20px)!important;
    max-height:min(380px,calc(100svh - 138px))!important;
  }
}

@media (max-width:768px){
  body.infotech-public-page header.it-top,
  body.ixdesk-software-page .ixdesk-it-top,
  body.fixturebridge-page .it-global-header,
  body.fixture-bridge-page .it-global-header,
  body.fixture-builder-page .it-global-header{
    width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    margin-top:10px!important;
    margin-bottom:14px!important;
  }

  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 main.home-lab-main,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 main.sistemas-home-main,
  body.infotech-public-page.software-app-page main,
  body.infotech-public-page.software-app-page footer.foot,
  body.infotech-public-page.software-product-axis2 main,
  body.infotech-public-page.software-product-axis2 footer.foot{
    width:calc(100vw - 28px)!important;
    max-width:calc(100vw - 28px)!important;
    padding-bottom:26px!important;
  }

  body.infotech-public-page.home-lab-reference4 .home-lab-bg,
  body.infotech-public-page.sistemas-home-standard1 .home-lab-bg{
    background-position:60% top!important;
  }

  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 .home-lab-copy h1,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 .sistemas-home-copy h1{
    font-size:clamp(2.08rem,9.2vw,3.1rem)!important;
    line-height:1.08!important;
    letter-spacing:-.045em!important;
    margin-bottom:14px!important;
  }

  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 .home-lab-copy .lead,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 .sistemas-home-copy .lead{
    font-size:1rem!important;
    line-height:1.52!important;
  }

  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 .home-lab-card,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 .sistemas-home-card,
  body.infotech-public-page.software-product-axis2 .software-card-rich,
  body.infotech-public-page.software-app-page .mini,
  body.infotech-public-page.software-app-page .software-feature-mini,
  body.ixdesk-software-page .ixdesk-app-card,
  body.ixdesk-software-page .ixdesk-managed-card,
  body.ixdesk-software-page .ixdesk-benefit{
    min-height:auto!important;
    padding:18px!important;
    border-radius:20px!important;
  }

  body.infotech-public-page.software-app-page .software-hero-shell,
  body.ixdesk-software-page .ixdesk-cta{
    padding:18px!important;
    border-radius:22px!important;
  }

  body.infotech-public-page.software-app-page .software-hero-panel{
    min-height:176px!important;
  }

  body.infotech-public-page.software-app-page .software-panel-shot{
    height:160px!important;
  }

  .it-pwa-toast{
    left:10px!important;
    right:10px!important;
    bottom:calc(74px + var(--it-rdp-safe-bottom))!important;
    width:auto!important;
    max-height:calc(100svh - 116px)!important;
    overflow:auto!important;
    padding:11px!important;
    border-radius:17px!important;
    gap:10px!important;
  }

  .it-pwa-toast-copy strong{font-size:12px!important;}
  .it-pwa-toast-copy span{font-size:11px!important;}
  .it-pwa-primary{height:34px!important;font-size:10px!important;padding:0 11px!important;}
  .it-pwa-close{width:34px!important;height:34px!important;}

  body .infotech-support-float,
  body .infotech-support-float.open,
  body .infotech-support-float.talking,
  body.fixture-builder-page .infotech-support-float,
  body.fixture-builder-page .infotech-support-float.open,
  body.fixture-builder-page .infotech-support-float.talking,
  body.fixturebridge-page .infotech-support-float,
  body.fixturebridge-page .infotech-support-float.open,
  body.fixturebridge-page .infotech-support-float.talking,
  body.fixture-bridge-page .infotech-support-float,
  body.fixture-bridge-page .infotech-support-float.open,
  body.fixture-bridge-page .infotech-support-float.talking{
    right:9px!important;
    bottom:calc(9px + var(--it-rdp-safe-bottom))!important;
    width:92px!important;
    height:92px!important;
    max-width:92px!important;
    max-height:92px!important;
  }

  body .infotech-support-float .support-mascot-btn,
  body.fixture-builder-page .infotech-support-float .support-mascot-btn,
  body.fixturebridge-page .infotech-support-float .support-mascot-btn,
  body.fixture-bridge-page .infotech-support-float .support-mascot-btn{
    width:92px!important;
    height:92px!important;
    min-width:92px!important;
    min-height:92px!important;
    max-width:92px!important;
    max-height:92px!important;
    border-radius:22px!important;
  }

  body .infotech-support-float .support-bubble,
  body.fixture-builder-page .infotech-support-float .support-bubble,
  body.fixturebridge-page .infotech-support-float .support-bubble,
  body.fixture-bridge-page .infotech-support-float .support-bubble{
    bottom:96px!important;
    width:min(272px,calc(100vw - 18px))!important;
  }

  body .infotech-support-float .support-card,
  body.fixture-builder-page .infotech-support-float .support-card,
  body.fixturebridge-page .infotech-support-float .support-card,
  body.fixture-bridge-page .infotech-support-float .support-card{
    bottom:154px!important;
    width:min(272px,calc(100vw - 18px))!important;
    max-height:min(360px,calc(100svh - 124px))!important;
  }
}

@media (max-width:430px){
  body.infotech-public-page header.it-top .it-brand span span,
  body.ixdesk-software-page .ixdesk-it-brand span span,
  body.fixturebridge-page .it-global-brand em,
  body.fixture-bridge-page .it-global-brand em,
  body.fixture-builder-page .it-global-brand em{
    display:none!important;
  }

  body.infotech-public-page header.it-top .it-topbar,
  body.ixdesk-software-page .ixdesk-it-topbar{
    padding:9px!important;
    border-radius:16px!important;
  }

  body.infotech-public-page header.it-top .it-nav a,
  body.ixdesk-software-page .ixdesk-it-nav a,
  body.fixturebridge-page .it-global-nav a,
  body.fixture-bridge-page .it-global-nav a,
  body.fixture-builder-page .it-global-nav a{
    min-height:34px!important;
    height:34px!important;
    font-size:11px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }

  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 .home-lab-hero,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 .sistemas-home-hero{
    padding-top:16px!important;
    padding-bottom:12px!important;
    margin-bottom:14px!important;
  }

  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 .home-lab-copy h1,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 .sistemas-home-copy h1,
  body.infotech-public-page.software-app-page .software-hero-copy h1,
  body.ixdesk-software-page .ixdesk-hero-copy h1{
    font-size:clamp(2rem,10.4vw,2.72rem)!important;
    line-height:1.08!important;
  }

  body.infotech-public-page.software-app-page .software-hero-copy .lead,
  body.ixdesk-software-page .ixdesk-description{
    font-size:.94rem!important;
    line-height:1.5!important;
  }

  body.infotech-public-page .actions,
  body.infotech-public-page .sistemas-actions,
  body.infotech-public-page .ixdesk-actions,
  body.ixdesk-software-page .ixdesk-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  body.infotech-public-page .actions a,
  body.infotech-public-page .actions button,
  body.infotech-public-page .sistemas-actions .it-btn,
  body.ixdesk-software-page .ixdesk-btn{
    width:100%!important;
    justify-content:center!important;
    min-height:44px!important;
  }

  .it-pwa-toast{
    bottom:calc(66px + var(--it-rdp-safe-bottom))!important;
    align-items:stretch!important;
    flex-direction:column!important;
  }

  .it-pwa-toast-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 36px!important;
  }

  body .infotech-support-float,
  body .infotech-support-float.open,
  body .infotech-support-float.talking,
  body.fixture-builder-page .infotech-support-float,
  body.fixture-builder-page .infotech-support-float.open,
  body.fixture-builder-page .infotech-support-float.talking,
  body.fixturebridge-page .infotech-support-float,
  body.fixturebridge-page .infotech-support-float.open,
  body.fixturebridge-page .infotech-support-float.talking,
  body.fixture-bridge-page .infotech-support-float,
  body.fixture-bridge-page .infotech-support-float.open,
  body.fixture-bridge-page .infotech-support-float.talking{
    right:8px!important;
    bottom:calc(8px + var(--it-rdp-safe-bottom))!important;
    width:82px!important;
    height:82px!important;
    max-width:82px!important;
    max-height:82px!important;
  }

  body .infotech-support-float .support-mascot-btn,
  body.fixture-builder-page .infotech-support-float .support-mascot-btn,
  body.fixturebridge-page .infotech-support-float .support-mascot-btn,
  body.fixture-bridge-page .infotech-support-float .support-mascot-btn{
    width:82px!important;
    height:82px!important;
    min-width:82px!important;
    min-height:82px!important;
    max-width:82px!important;
    max-height:82px!important;
    border-radius:20px!important;
  }

  body .infotech-support-float .support-bubble,
  body.fixture-builder-page .infotech-support-float .support-bubble,
  body.fixturebridge-page .infotech-support-float .support-bubble,
  body.fixture-bridge-page .infotech-support-float .support-bubble{
    bottom:86px!important;
  }

  body .infotech-support-float .support-card,
  body.fixture-builder-page .infotech-support-float .support-card,
  body.fixturebridge-page .infotech-support-float .support-card,
  body.fixture-bridge-page .infotech-support-float .support-card{
    bottom:142px!important;
    max-height:min(340px,calc(100svh - 116px))!important;
  }
}

@media (max-width:390px){
  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 main.home-lab-main,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 main.sistemas-home-main,
  body.infotech-public-page.software-app-page main,
  body.infotech-public-page.software-app-page footer.foot,
  body.infotech-public-page.software-product-axis2 main,
  body.infotech-public-page.software-product-axis2 footer.foot{
    width:calc(100vw - 22px)!important;
    max-width:calc(100vw - 22px)!important;
  }

  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 .home-lab-card,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 .sistemas-home-card,
  body.infotech-public-page.software-product-axis2 .software-card-rich,
  body.infotech-public-page.software-app-page .mini,
  body.infotech-public-page.software-app-page .software-feature-mini,
  body.ixdesk-software-page .ixdesk-app-card,
  body.ixdesk-software-page .ixdesk-managed-card,
  body.ixdesk-software-page .ixdesk-benefit{
    padding:16px!important;
  }

  body .infotech-support-float,
  body .infotech-support-float.open,
  body .infotech-support-float.talking,
  body.fixture-builder-page .infotech-support-float,
  body.fixture-builder-page .infotech-support-float.open,
  body.fixture-builder-page .infotech-support-float.talking,
  body.fixturebridge-page .infotech-support-float,
  body.fixturebridge-page .infotech-support-float.open,
  body.fixturebridge-page .infotech-support-float.talking,
  body.fixture-bridge-page .infotech-support-float,
  body.fixture-bridge-page .infotech-support-float.open,
  body.fixture-bridge-page .infotech-support-float.talking{
    width:76px!important;
    height:76px!important;
    max-width:76px!important;
    max-height:76px!important;
  }

  body .infotech-support-float .support-mascot-btn,
  body.fixture-builder-page .infotech-support-float .support-mascot-btn,
  body.fixturebridge-page .infotech-support-float .support-mascot-btn,
  body.fixture-bridge-page .infotech-support-float .support-mascot-btn{
    width:76px!important;
    height:76px!important;
    min-width:76px!important;
    min-height:76px!important;
    max-width:76px!important;
    max-height:76px!important;
  }

  .it-pwa-toast{bottom:calc(62px + var(--it-rdp-safe-bottom))!important;}
}

@media (max-width:360px){
  body.infotech-public-page header.it-top,
  body.ixdesk-software-page .ixdesk-it-top,
  body.fixturebridge-page .it-global-header,
  body.fixture-bridge-page .it-global-header,
  body.fixture-builder-page .it-global-header{
    width:calc(100vw - 18px)!important;
    max-width:calc(100vw - 18px)!important;
  }

  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 .home-lab-copy h1,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 .sistemas-home-copy h1,
  body.infotech-public-page.software-app-page .software-hero-copy h1,
  body.ixdesk-software-page .ixdesk-hero-copy h1{
    font-size:clamp(1.86rem,10.2vw,2.36rem)!important;
  }

  body .infotech-support-float,
  body .infotech-support-float.open,
  body .infotech-support-float.talking,
  body.fixture-builder-page .infotech-support-float,
  body.fixture-builder-page .infotech-support-float.open,
  body.fixture-builder-page .infotech-support-float.talking,
  body.fixturebridge-page .infotech-support-float,
  body.fixturebridge-page .infotech-support-float.open,
  body.fixturebridge-page .infotech-support-float.talking,
  body.fixture-bridge-page .infotech-support-float,
  body.fixture-bridge-page .infotech-support-float.open,
  body.fixture-bridge-page .infotech-support-float.talking{
    width:70px!important;
    height:70px!important;
    max-width:70px!important;
    max-height:70px!important;
  }

  body .infotech-support-float .support-mascot-btn,
  body.fixture-builder-page .infotech-support-float .support-mascot-btn,
  body.fixturebridge-page .infotech-support-float .support-mascot-btn,
  body.fixture-bridge-page .infotech-support-float .support-mascot-btn{
    width:70px!important;
    height:70px!important;
    min-width:70px!important;
    min-height:70px!important;
    max-width:70px!important;
    max-height:70px!important;
  }

  .it-pwa-toast{bottom:calc(58px + var(--it-rdp-safe-bottom))!important;}
}

@media (min-width:1366px){
  body.infotech-public-page header.it-top,
  body.infotech-public-page main,
  body.infotech-public-page footer.foot,
  body.ixdesk-software-page .ixdesk-it-top,
  body.ixdesk-software-page .ixdesk-it-foot{
    transform:translateZ(0);
    backface-visibility:hidden;
  }
}

@media (min-width:1920px){
  body.infotech-public-page.it-standard-page-axis2.home-lab-reference4 main.home-lab-main,
  body.infotech-public-page.it-standard-page-axis2.sistemas-home-standard1 main.sistemas-home-main,
  body.infotech-public-page.software-app-page main,
  body.infotech-public-page.software-app-page footer.foot{
    max-width:1160px!important;
  }
}
