/*

Theme name: AINS-theme

*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');

html,
body {
  transform: none !important;
  font-family: 'Noto Sans JP', sans-serif;
  /* Encourages wrapping at appropriate phrase boundaries */
  line-break: strict;
  /* Ensures that words aren't broken in the middle if possible */
  word-break: keep-all;
  /* Allows the browser to use a dictionary to find natural breaks */
  overflow-wrap: anywhere;
}

.sans-jp {
  font-family: 'Noto Sans JP', sans-serif;
}

.open-sans {
  font-family: 'Open Sans', sans-serif;
}

/* Prevent horizontal overflow globally */
html {
  transform: none !important;
  overflow-x: hidden;
}

body {
  /* Prevent horizontal overflow on body */
  overflow-x: hidden;
  /* Ensure body doesn't exceed viewport width */
  max-width: 100vw;
  /* Prevent horizontal scrolling */
  position: relative;
}

/* BudouX — Japanese natural word-breaking web component */
budoux-ja {
  display: inline;
}