
/* v34 — Mobile legal pages: stable refresh layout + compact scroll */
@media(max-width:620px){
  body.policy-page{
    min-height:100svh;
    overflow-x:hidden;
  }
  body.policy-page .wrap{
    width:calc(100% - 20px)!important;
    max-width:920px!important;
    padding:12px 0 24px!important;
  }
  body.policy-page .top{
    margin-bottom:14px!important;
    gap:10px!important;
    align-items:stretch!important;
  }
  body.policy-page .brand{
    width:max-content;
    max-width:100%;
    min-height:42px;
  }
  body.policy-page .brand img{
    width:36px!important;
    height:36px!important;
  }

  /* Always 2x2 from first paint. This prevents refresh layout shift
     when the Account button is injected after page load. */
  body.policy-page header .nav{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
  }
  body.policy-page header .nav>a{
    width:100%!important;
    min-width:0!important;
    min-height:38px!important;
    padding:8px 6px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    font-size:11.5px!important;
    line-height:1.2!important;
  }

  body.policy-page .hero{
    padding:17px 16px!important;
    margin-bottom:10px!important;
    border-radius:18px!important;
  }
  body.policy-page .hero h1{
    margin:6px 0 6px!important;
    font-size:clamp(27px,9vw,36px)!important;
    line-height:1.08!important;
  }
  body.policy-page .eyebrow{
    font-size:10px!important;
  }
  body.policy-page .updated{
    font-size:11.5px!important;
  }

  body.policy-page .card{
    padding:18px 16px!important;
    border-radius:18px!important;
    line-height:1.62!important;
  }
  body.policy-page .card h2{
    margin:20px 0 6px!important;
    font-size:17px!important;
    line-height:1.3!important;
  }
  body.policy-page .card h2:first-child{margin-top:0!important}
  body.policy-page .card p,
  body.policy-page .card li{
    font-size:13.5px!important;
    line-height:1.62!important;
  }
  body.policy-page .card p{
    margin-top:7px!important;
    margin-bottom:10px!important;
  }
  body.policy-page .card ul{
    margin-top:7px!important;
    margin-bottom:10px!important;
    padding-left:20px!important;
  }
  body.policy-page .note{
    padding:12px 13px!important;
    font-size:12.5px!important;
  }

  body.policy-page .foot{
    margin-top:13px!important;
    padding:0 2px 4px!important;
    gap:6px 8px!important;
    font-size:10.5px!important;
    line-height:1.4!important;
  }

  /* Fixed chat must never create perceived page whitespace. */
  body.policy-page #devai-livechat{
    position:fixed!important;
  }
}
@media(max-width:360px){
  body.policy-page .wrap{width:calc(100% - 16px)!important}
  body.policy-page header .nav>a{font-size:10.5px!important;padding:7px 4px!important}
  body.policy-page .hero{padding:15px 14px!important}
  body.policy-page .card{padding:16px 14px!important}
}
