/* Let the existing mobile headline + logo determine header height. */
header #s-navi dt.trigger {
  height: auto !important;
  min-height: 100px !important;
  box-sizing: border-box;
  padding-top: calc(8px + env(safe-area-inset-top, 0px)) !important;
  padding-bottom: 8px !important;
}
header #st-mobile-logo { min-width: 0; }
/* The theme fixes the navigation and reserves 100px in #headbox. */
body.mobile header #headbox { padding-top: var(--salon-mobile-header-height, 142px); }
/* Fixed header must cover scrolling text, not let it show through the SVG logo. */
body.mobile header #s-navi dt.trigger { background:#fff !important; }
/* Header/footer share the same visible logo width on each device layout. */
body.mobile header #st-mobile-logo img { height:auto !important; max-height:none !important; width:190px !important; max-width:100%; }
body:not(.mobile) header .sitename img { width:318px !important; max-width:100%; height:auto !important; }

body.mobile footer .footerlogo img { width:190px !important; max-width:100% !important; height:auto !important; max-height:none !important; }
body:not(.mobile) footer .footerlogo img { width:318px !important; max-width:100% !important; height:auto !important; max-height:none !important; }
