@media (max-width: 768px){
  :root{--item:258px}
  body{overflow:hidden}
  .hint-chip{font-size:14px}
  .back-btn{left:14px; bottom:14px; padding:11px 12px}
}
@media (max-width: 440px){
  :root{--item:258px}
  .overlay{padding:14px}
  .overlay-title{font-size:22px}
}


@media (max-width: 520px){
  .mini-carousel-caption{padding:12px 14px 78px;}
}

@media (max-width: 768px){
  :root{
    --site-header-h:62px;
    --stage-top-clearance:14px;
  }
  .site-header{padding:10px 12px 0;}
  .site-header__inner{min-height:46px;}
  .site-header__title{font-size:14px; letter-spacing:.16em; padding:0 12px;}
}

@media (max-width: 440px){
  .site-header__title{font-size:13px; letter-spacing:.12em;}
}

@media (max-width: 768px){
  html,
  body{
    position:fixed;
    width:100%;
    overscroll-behavior:none;
  }

  .stage{
    touch-action:pan-x pan-y;
  }

  .carousel-track{
    touch-action:none !important;
  }

  .carousel-item{
    touch-action:none !important;
  }

  .overlay{
    padding:10px;
    align-items:stretch;
  }

  .overlay-shell{
    width:min(100%, calc(100vw - 20px));
    height:min(100%, calc(100svh - 20px));
    max-height:calc(100svh - 20px);
  }

  .overlay-body{
    overflow-y:auto !important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y !important;
  }

  .timeline,
  .legal-tabs,
  .overlay-footer-links{
    touch-action:pan-x !important;
  }
}
