/* Theme base styles (not overwritten by generator) */

html, body {
  height: 100%;
}

body {
  background: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-primary);
  font-size: var(--font-size-base);
  line-height: var(--line-height-normal);
}

img {
  max-width: 100%;
  height: auto;
}

/*
  Deterministic container behavior.
  Even if Tailwind fails to load, generated templates keep correct gutters.
*/
.container {
  width: 100%;
  max-width: var(--content-width-wide);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--spacing-md);
  padding-right: var(--spacing-md);
}

/* Ensure "readable" sections can opt-in via inline max-width */
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

/* Fix desktop header visibility when generator hardcodes inline display:none */
@media (min-width: 1024px) {
  #site-navigation { display: flex !important; }
  #masthead > div > div.lg\:flex { display: flex !important; }
  #mobile-menu-toggle { display: none !important; }
  #mobile-menu { display: none !important; }
}

/*
  Sticky header (applied by assets/js/header-sticky.js).
  Do not put position:sticky on the whole <header> in generated header.php for tall multi-band layouts.
*/
.trf-is-sticky {
  position: sticky;
  top: var(--trf-admin-bar-offset, 0px);
  z-index: 40;
}

header.trf-site-header[data-trf-sticky="none"] .trf-is-sticky {
  position: static;
}

