/* V11670 — stronger mobile fit-to-screen tune for Home hero + bottom dock.
   Desktop unchanged. No zoom/scale used. */
@media (max-width:620px){
  html,body{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  html body:not(.adminBody){
    padding-bottom:68px!important;
  }

  html body:not(.adminBody)>main.hero{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:6px 0 12px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  html body main.hero .container.heroInner{
    width:calc(100% - 18px)!important;
    min-width:0!important;
    max-width:400px!important;
    margin:0 auto!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  html body main.hero .heroHomeTextNoJump,
  html body main.hero .heroHomeTextNoJump>*{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  html body main.hero .heroHomeTextNoJump{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    text-align:center!important;
  }

  html body main.hero .heroHomeTextNoJump .badge{
    margin:0 auto 6px!important;
    padding:6px 10px!important;
    font-size:10.5px!important;
    line-height:1.1!important;
  }

  html body main.hero .heroHomeTextNoJump>h1.hero-title-force-small{
    --cim-mobile-hero-title-size:18px;
    --cim-mobile-hero-title-max:100%;
    width:100%!important;
    margin:0 0 5px!important;
    letter-spacing:-.012em!important;
    line-height:1.14!important;
    text-align:center!important;
  }

  html body main.hero .heroHomeTextNoJump>p,
  html body main.hero .heroHomeTextNoJump>.heroExtraText,
  html body main.hero .heroHomeTextNoJump>.heroNoteText{
    width:100%!important;
    max-width:360px!important;
    margin:0 auto 6px!important;
    font-size:12.2px!important;
    line-height:1.34!important;
    font-weight:400!important;
    text-align:center!important;
  }

  html body main.hero .heroHomeTextNoJump>.stats{
    width:100%!important;
    max-width:360px!important;
    margin:2px auto 0!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }

  html body main.hero .heroHomeTextNoJump>.stats>.stat{
    min-width:0!important;
    min-height:52px!important;
    padding:8px 7px!important;
    border-radius:13px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
  }

  html body main.hero .heroHomeTextNoJump>.stats>.stat b{
    font-size:16px!important;
    line-height:1.02!important;
  }

  html body main.hero .heroHomeTextNoJump>.stats>.stat span{
    font-size:9.5px!important;
    line-height:1.1!important;
  }

  html body main.hero .heroVisual,
  html body main.hero .heroHomeVisualNoJump{
    width:100%!important;
    min-width:0!important;
    max-width:320px!important;
    margin:0 auto!important;
    justify-self:center!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  html body main.hero .heroVisual .sliderBox#homeHeroSlider,
  html body main.hero .heroVisual .animatedSampleSlider{
    width:100%!important;
    min-width:0!important;
    max-width:320px!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:4/3!important;
    margin:0 auto!important;
    border-radius:18px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  html body main.hero #homeHeroSlider img.slideImg{
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
  }

  html body:not(.adminBody) .cimMobileActionDockV11651{
    left:12px!important;
    right:12px!important;
    bottom:7px!important;
    padding:5px!important;
    border-radius:14px!important;
  }

  html body:not(.adminBody) .cimMobileActionDockV11651 .dockGrid{
    gap:5px!important;
  }

  html body:not(.adminBody) .cimMobileActionDockV11651 a{
    height:40px!important;
    min-height:40px!important;
    padding:0 4px!important;
    border-radius:9px!important;
    font-size:11.5px!important;
    line-height:1!important;
  }
}

@media (max-width:390px){
  html body:not(.adminBody){padding-bottom:66px!important;}
  html body main.hero .container.heroInner{width:calc(100% - 14px)!important;max-width:388px!important;gap:9px!important;}
  html body main.hero .heroHomeTextNoJump .badge{font-size:10px!important;padding:5px 9px!important;}
  html body main.hero .heroHomeTextNoJump>h1.hero-title-force-small{--cim-mobile-hero-title-size:17px;margin-bottom:4px!important;}
  html body main.hero .heroHomeTextNoJump>p,
  html body main.hero .heroHomeTextNoJump>.heroExtraText,
  html body main.hero .heroHomeTextNoJump>.heroNoteText{font-size:11.8px!important;line-height:1.32!important;max-width:350px!important;}
  html body main.hero .heroHomeTextNoJump>.stats{max-width:350px!important;gap:6px!important;}
  html body main.hero .heroHomeTextNoJump>.stats>.stat{min-height:50px!important;padding:7px 6px!important;}
  html body main.hero .heroHomeTextNoJump>.stats>.stat b{font-size:15px!important;}
  html body main.hero .heroHomeTextNoJump>.stats>.stat span{font-size:9px!important;}
  html body main.hero .heroVisual,
  html body main.hero .heroHomeVisualNoJump,
  html body main.hero .heroVisual .sliderBox#homeHeroSlider,
  html body main.hero .heroVisual .animatedSampleSlider{max-width:304px!important;}
  html body:not(.adminBody) .cimMobileActionDockV11651{left:10px!important;right:10px!important;}
  html body:not(.adminBody) .cimMobileActionDockV11651 a{font-size:11px!important;}
}
