/* WebKraft — mobile foundation (matches agency/main.html patterns) */
*,*::before,*::after{box-sizing:border-box}
html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  overflow-x:hidden;
  overflow-x:clip;
  width:100%;
  scroll-behavior:smooth
}
body{
  overflow-x:hidden;
  overflow-x:clip;
  min-width:0;
  width:100%;
  max-width:100%;
  margin:0
}
img,picture,video,canvas,svg,iframe{
  max-width:100%;
  height:auto
}
table{
  max-width:100%;
  border-collapse:collapse
}
button,input,select,textarea{
  font:inherit;
  max-width:100%
}
pre,code{
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch
}

@media (max-width:767px){
  /* Prevent grid/flex min-content from forcing horizontal clip */
  [class*="grid"]>*,[class*="layout"]>*,[class*="inner"]>*{
    min-width:0
  }
  h1{font-size:clamp(1.75rem,7vw,2.5rem)!important;line-height:1.15}
  h2{font-size:clamp(1.35rem,5vw,1.85rem)!important;line-height:1.2}
  .c,.container,[class*="container"]:not([class*="container-fluid"]){
    padding-left:max(16px,env(safe-area-inset-left))!important;
    padding-right:max(16px,env(safe-area-inset-right))!important
  }
  input,select,textarea{font-size:16px}
  .btn,a.btn,button[type=submit],button.btn{
    min-height:44px
  }
  [style*="grid-template-columns: repeat(3"],
  [style*="grid-template-columns:repeat(3"]{
    grid-template-columns:1fr!important
  }
}

@media (max-width:400px){
  .c,.container,[class*="container"]:not([class*="container-fluid"]){
    padding-left:max(14px,env(safe-area-inset-left))!important;
    padding-right:max(14px,env(safe-area-inset-right))!important
  }
}

@supports (padding:max(0px)){
  body{
    padding-left:env(safe-area-inset-left);
    padding-right:env(safe-area-inset-right);
    padding-bottom:env(safe-area-inset-bottom)
  }
}
