html,body{max-width:100%;overflow-x:hidden}
img,video,svg{max-width:100%}
button,a,input,select,textarea{touch-action:manipulation}

@media(max-width:640px){
  nav.fixed{padding:.75rem 1rem!important;background:linear-gradient(to bottom,rgba(0,0,0,.72),rgba(0,0,0,0));}
  nav.fixed>div{height:2.75rem!important}
  nav.fixed a[href="#analytics"]{max-width:68vw;padding:.65rem 1rem!important;font-size:.75rem!important;white-space:nowrap}
  #hero>div.relative.z-10{padding-top:7rem!important;padding-left:1rem!important;padding-right:1rem!important}
  #hero h1{font-size:clamp(2.75rem,14vw,3.5rem)!important;line-height:.96!important}
  #hero h1 span{max-width:100%}
  #hero p{max-width:34rem}
  #storyCard{width:min(100%,380px)!important;min-height:430px!important}
  main section{scroll-margin-top:4.5rem}
  main section [class*="text-[4.5rem]"],
  main section [class*="text-[3.5rem]"],
  main section [class*="text-[3rem]"],
  main section [class*="text-[2.625rem]"]{font-size:clamp(2.25rem,11vw,3rem)!important;line-height:1!important}
  main section [class*="text-[2rem]"]{font-size:1.75rem!important}
  .interest-dialog{inset:0;width:100%!important;height:100dvh!important;max-height:none!important;border:0!important;border-radius:0!important}
  .interest-dialog>div.sticky{padding:1rem!important}
  .interest-dialog form{padding:1.25rem 1rem calc(1.5rem + env(safe-area-inset-bottom))!important}
  .form-control{font-size:1rem}
  .choice{padding:.9rem;min-height:48px}
  footer{padding-bottom:max(2rem,env(safe-area-inset-bottom))}
}

@media(max-width:420px){
  #hero>div.relative.z-10>p:first-child{font-size:.68rem!important;letter-spacing:.09rem!important}
  #storyCard .relative.z-10{padding:1.25rem!important}
  #storyCard dl{gap:.9rem!important}
  #storyCard dd{font-size:1.25rem!important}
  main section [class*="grid-cols-3"]{grid-template-columns:1fr!important}
  main section [class*="px-5"]{padding-left:1rem!important;padding-right:1rem!important}
}
