* { box-sizing: border-box; }
.site-title { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
img, video, audio, iframe { max-width: 100%; }
img, video, iframe { height: auto; }
audio { width: 100%; }
.site-content { min-width: 0; }
.site-main { padding-top: 0; padding-bottom: 0; }
.post-thumbnail { padding-top: 1rem; }
.site-footer { float: none; width: auto; margin: 0; }
.site-footer .site-info { text-align: center; }
.entry-content { overflow-wrap: anywhere; }
.entry-content table { display: block; max-width: 100%; overflow-x: auto; }
.menu-line { display: flex; align-items: start; justify-content: space-between; }
.menu-line > a { flex: 1; }
.menu-children { position: relative; flex: none; }
.menu-children > summary { cursor: pointer; display: block; width: 3rem; min-height: 3rem; padding: .8rem; color: #333; text-align: center; }
.menu-children > summary::-webkit-details-marker { display: none; }
.menu-children[open] > summary { color: #900; }
.menu-children .sub-menu { position: absolute; z-index: 10; left: auto; right: 0; width: min(24rem, 80vw); max-height: 65vh; overflow-y: auto; background: #fff; border: 1px solid #ddd; box-shadow: 0 4px 14px #0002; }
.menu-children .sub-menu .sub-menu { right: 100%; top: 0; }
.menu-children .sub-menu a { padding: .55rem .8rem; }
.widget_archive details { padding: .5rem 0; }
.widget_archive summary { cursor: pointer; }
.widget_archive ul { max-height: 25rem; overflow-y: auto; margin-top: .7rem; }
.widget_archive li { margin: .25rem 0; }
.social-navigation ul { display: flex; flex-wrap: nowrap; }
.social-navigation li { float: none; flex: 0 0 20%; margin: 0; }
.social-navigation a { width: 100%; font: normal .85rem/1.4 sans-serif; }
.archive-entry { padding-bottom: 1.4rem; }
.archive-entry .entry-summary { padding: 0 7.6923% 2rem; }
.archive-entry .entry-summary p { margin: .5rem 0; }
.site-title { font-size: 1.25rem; }
.site-info { padding: 1.5rem; }
@media (min-width: 38.75em) {
  .site-footer { margin: 0 7.6923%; }
}
@media (min-width: 68.75em) {
  .site-footer { margin: 0 8.3333%; }
}
@media (min-width: 955px) {
  .site-content { margin-left: 0; }
}
@media (max-width: 955px) {
  #page { display: flex; flex-direction: column; }
  #sidebar { order: 0; }
  #content { order: 1; }
  .sidebar { width: 100%; max-width: none; }
  .site-content { margin: 0; width: 100%; }
  .secondary { display: block; }
  .menu-children .sub-menu { right: 0; }
}
